2012-09-13 27 views
0

我想要將org.eclipse.uml2.uml_4.0.0.v20120604-0919.jar包含在Maven模塊中。我已經設置了p2存儲庫如何在Tycho內部版本中添加依賴項到Eclipse套件中

<repository> 
    <id>juno</id> 
    <layout>p2</layout> 
    <url>http://download.eclipse.org/releases/juno</url> 
</repository> 

並配置了Tycho構建擴展。我必須使用哪一個groupdIdartifactId,這樣Tycho將包括org.eclipse.uml2.uml_4.0.0.v20120604-0919.jar作爲依賴關係?

+0

您使用的包裝類型是「eclipse-plugin」嗎?如果是的話,請在問題中加入。 – oberlies

+0

其實這是不應該澄清,如果這應該是一個eclipse插件或其他組件。也許這必須嵌入到maven mojo中。但是,現在我將它打包爲一個eclipse插件,它的工作方式就像你在答案中描述的那樣。 – SpaceTrucker

+1

不幸的是,您必須使用Tycho的Tycho包裝類型之一才能工作。所以你例如不能在Tycho中使用包裝類型'jar'。但是,您可以在POM中單獨添加普通的Maven目標,並且這應該可以工作。 – oberlies

回答

2

在Tycho中,您需要在OSGi清單文件(META-INF/MANIFEST.MF)中指定插件的依賴關係。因此,對於給定的Eclipse插件,你會寫如

Require-Bundle: org.eclipse.uml2.uml 

你不能通過POM配置做同樣的事情。

這背後的想法是,第谷公司遵循所謂的清單首先的方法。 Tycho的主要配置文件是OSGi清單和其他Eclipse PDE文件格式(如feature.xml,* .product文件等)。

其他工具,如maven-bundle-plugin遵循POM-first構建OSGi包的方法。對於maven-bundle-plugin,您需要在POM中指定依賴關係,並相應地生成清單。

相關問題