Me revoilà avec un problème un peu différent : j'arrive à créer un projet multimodules de bundles osgi indépendants. Par contre, lorsqu'un bundle requiert un autre, j'ai un problème lors de la construction du bundle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
[INFO] [bundle:bundle]
[ERROR] Error building bundle de.vogella.osgi:quote-service:bundle:0.0.1 : Unresolved references to [de.vogella.osgi.quote] by class(es) on the Bundle
-Classpath[Jar:dot]: [de/vogella/osgi/quoteservice/Activator.class, de/vogella/osgi/quoteservice/QuoteService.class]
[ERROR] Error(s) found in bundle configuration
J'arrive bien à compiler (en mettant les bonnes dépendances de type bundle), par contre la construction du bundle échoue. Que se passe-t-il ?

Voici les poms et fichiers manifest incriminés :
1 : quote
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
	<parent>
		<artifactId>osgi-first-app</artifactId>
		<groupId>de.vogella.osgi</groupId>
		<version>0.0.1</version>
	</parent>
 
	<modelVersion>4.0.0</modelVersion>
	<groupId>de.vogella.osgi</groupId>
	<artifactId>quote</artifactId>
	<packaging>bundle</packaging>
	<name>Quote Bundle</name>
	<version>0.0.1</version>
 
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>1.4.3</version>
				<extensions>true</extensions>
				<configuration>
					<instructions>
						<_include>src/main/resources/META-INF/MANIFEST.MF</_include>
					</instructions>
				</configuration>
			</plugin>
		</plugins>
	</build>
 
</project>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Quote Plug-in
Bundle-SymbolicName: de.vogella.osgi.quote
Bundle-Activator: de.vogella.osgi.quote.Activator
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Import-Package: org.osgi.framework;version="1.3.0"
Export-Package: de.vogella.osgi.quote
2 : quoteservice
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
	<parent>
		<artifactId>osgi-first-app</artifactId>
		<groupId>de.vogella.osgi</groupId>
		<version>0.0.1</version>
	</parent>
 
	<dependencies>
		<dependency>
			<groupId>de.vogella.osgi</groupId>
			<artifactId>quote</artifactId>
			<version>0.0.1</version>
			<type>bundle</type>
		</dependency>
	</dependencies>
 
	<modelVersion>4.0.0</modelVersion>
	<groupId>de.vogella.osgi</groupId>
	<artifactId>quote-service</artifactId>
	<packaging>bundle</packaging>
	<name>Quote Service Bundle</name>
	<version>0.0.1</version>
 
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>1.4.3</version>
				<extensions>true</extensions>
				<configuration>
					<instructions>
						<_include>src/main/resources/META-INF/MANIFEST.MF</_include>
					</instructions>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Quoteservice Plug-in
Bundle-SymbolicName: de.vogella.osgi.quoteservice
Bundle-Activator: de.vogella.osgi.quoteservice.Activator
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Import-Package: org.osgi.framework;version="1.3.0", \
 de.vogella.osgi.quote;version="0.0.1"