我正在通过在 Eclipse 中使用 maven bundle 插件创建 osgi bundle。在我的应用程序中,我有非 maven jar 文件,大多数 java 类在我的应用程序中都依赖于该文件。我的 pom.xml 文件如下。
<build>
...
<plugins>
....
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.2.0</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-Activator>org.myapp.Activator</Bundle-Activator>
<Include-Resource>a1.jar=${basedir}/src/main/java/lib/a1.jar,a2.jar=${basedir}/src/main/java/lib/a2.jar,a3.jar=${basedir}/src/main/java/lib/a3.jar</Include-Resource>
<Bundle-ClassPath>.,${basedir}/src/main/java/lib/a1.jar,${basedir}/src/main/java/lib/a2.jar,${basedir}/src/main/java/lib/a3.jar</Bundle-ClassPath>
</instructions>
</configuration>
</plugin>
<!-- Maven Compiler plugin -->
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<includes>
<include>${project.basedir}/src/main/java/**</include>
</includes>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
....
</plugins>
</build>
通过使用它,我可以成功构建我的应用程序,并且我的最终 jar 包还包含所有需要的 jar 文件,但问题是,最终包中没有 .class 文件,我的目标目录也不包含任何 .class 文件。
如果我从 maven-compiler-plugin 中删除包含标记,那么我得到类不存在错误。
所以请告诉我上面的代码有什么问题,它没有在目标目录和最终包中创建 .class 文件。