这是我的问题:我目前正在Eclipse Juno中开发简单的RAP应用程序。我需要使用一些外部库,因此我使用felix maven-bundle-plugin创建了一个包含一些库的包。之后,我将该软件包复制到Eclipse dropins目录中。不幸的是,我无法将我的包添加到MANIFEST.MF中的项目中(依赖项 - >需要的插件 - >添加),导致Eclipse没有看到它。Eclipse Juno不会“看到”使用Apache felix创建的包maven-bundle-plugin
我检查了我的包在OSGI控制台,一切似乎都很好。状态已解决。我可以手动启动而不会出现任何错误。还有diag命令什么都不显示。
当我试图在Eclipse Indigo中添加我的包时,一切正常 - 我可以在我的项目中使用它。
你有什么想法可能是错的?我将我的pom.xml链接到maven-bundle-plugin:
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<packaging>bundle</packaging>
<groupId>org.myproject</groupId>
<artifactId>some-dependencies</artifactId>
<version>1.0.0</version>
<name>Dependencies</name>
<description>Dependency bundle</description>
<repositories>
<repository>
<id>maven-restlet</id>
<name>Public online Restlet repository</name>
<url>http://maven.restlet.org</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>14.0.1</version>
</dependency>
<dependency>
<groupId>org.restlet.jse</groupId>
<artifactId>org.restlet</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.restlet.jse</groupId>
<artifactId>org.restlet.ext.json</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<version>1.4.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.7</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Export-Package>com.google.common.*,org.restlet.*,org.json.*</Export-Package>
<Import-Package>!sun.misc,*</Import-Package>
<Bundle-SymbolicName>some-dependencies</Bundle-SymbolicName>
<Eclipse-BuddyPolicy>global</Eclipse-BuddyPolicy>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
问题解决!我创建了新的“插件从现有的JAR档案”我的捆绑JAR),然后将这个链接到我的项目并使用新的库是没有问题的。 –