2012-09-13 29 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中指定依赖关系,并相应地生成清单。

相关问题