2015-07-13 87 views
4

我正在开发一个使用tycho构建的eclipse插件,它需要一些非osgi jar文件作为依赖关系。当我在我的pom文件中添加依赖项时,它在maven构建期间不需要依赖项。 因此,我试图通过使用以下插件来制作一个包含所有必需依赖项的osgi包。如何添加jar非osgi jar文件作为依赖到eclipse插件?

<plugin> 
    <groupId>org.apache.felix</groupId> 
      <artifactId>maven-bundle-plugin</artifactId> 
      <version>1.4.0</version> 
      <extensions>true</extensions> 
      <configuration> 
       <manifestLocation>META-INF</manifestLocation> 
       <instructions> 
        <Bundle-SymbolicName>Osgi-bundle</Bundle-SymbolicName> 
        <Bundle-Name>Osgi-dependency</Bundle-Name> 
        <Bundle-Version>1.0.0</Bundle-Version> 
        <Export-Package>*</Export-Package> 
        <Private-Package>com.foo.bundle</Private-Package> 
        <Bundle-Activator>com.foo.bundle.Activator</Bundle-Activator> 
        <Import-Package>*;resolution:=optional</Import-Package> 

        <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependency> 
        <Embed-Directory>target/dependency</Embed-Directory> 
        <Embed-StripGroup>true</Embed-StripGroup> 
        <Embed-Transitive>true</Embed-Transitive> 
       </instructions> 
      </configuration> 
     </plugin> 

之后,我已经提供了这个osgi包的依赖关系到eclipse插件。但仍然不需要依赖关系。 我经历了很多sites.But我无法得到解决方案这个maven构建在持续集成 但是,当我尝试创建新的插件项目与现有的jar和添加osgi包并导出插件。它的工作精细。但是我需要做出持续的构建。 请提供一些解决方案,将依赖添加到eclipse插件项目中。

+0

你在独立的构建中构建OSGi包装?有关更多信息,请参阅[本维基页面](http://wiki.eclipse.org/Tycho/How_Tos/Dependency_on_pom-first_artifacts)。 – oberlies

+0

是的,我已经尝试过这种方式。但它不工作。现在我已经使用p2-maven-plugin生成存储库,并且已经将存储库设置为目标定义并添加了所需的捆绑包......但是现在eclipse maven building正在工作,但插件不工作 –

回答

5

我已经通过创建p2存储库并将其部署到服务器中解决了问题。我创建了一个目标定义文件并将其链接到我的插件项目。

我们可以使用下面的代码将非osgi jar转换为p2 repository。

 <build> 
     <plugins> 
     <plugin> 
     <groupId>org.reficio</groupId> 
    <artifactId>p2-maven-plugin</artifactId> 
    <version>1.1.2-SNAPSHOT</version> 
    <executions> 
     <execution> 
     <id>default-cli</id> 
     <configuration> 
      <artifacts> 
      <!-- specify your depencies here --> 
      <!-- groupId:artifactId:version --> 
      <artifact> 
       <id>org.slf4j:slf4j-log4j12:1.7.10</id> 
      </artifact> 
      </artifacts> 
     </configuration> 
     </execution> 
    </executions> 
    </plugin> 
</plugins> 

'

有关详细信息,这个网站是非常有益的。 http://www.vogella.com/tutorials/EclipseTycho/article.html#convertjars