2015-07-13 117 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