目前是否可以通过Maven构建Eclipse插件并具有良好的IDE集成?

我目前正在评估maven以改进我们的构建过程。 到目前为止,构建和创建普通jar文件仍然有效,尽管我对Maven IDE并不满意。

我现在正处于构建项目所需的所有库中,并且我正在转向Eclipse RCP项目。 而现在我不知道该怎么做。

在进入实际的RCP部分之前,我需要首先构建一些插件。 因此我实际上有3个问题。

我想构建这些插件,唯一真正的解决方案似乎是maven-bundle-plugin: http : //felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html

但是,对于良好的IDE集成,我还需要适当的文件(plugin.xml,build.properties等…),这些文件应该自动生成。

为了构建RCP部件,似乎到目前为止唯一的解决方案只是pde-maven-plugin http://mojo.codehaus.org/pde-maven-plugin/ ,据我所知,它使用了ant-pde 。 这是愚蠢的,不是吗?

我唯一能找到的东西是tycho( http://www.sonatype.com/people/2008/11/building-eclipse-plugins-with-maven-tycho/ ),但这是在很早的阶段。

再次,一个很好的Eclipse集成是必要的。 我真的,真的,真的不想两次指定依赖项。

那么如何使用maven构建Eclipse RCP项目?

更新

目前,似乎没有这样的解决方案。 Tycho看起来非常有前途,但我浪费了2天而没有让它运行(此时的当前版本)。 也许它会在半年左右的时间内准备就绪。

没有这样的工具。 第谷也是我所知道的唯一方法。

我使用m2eclipse ,它很符合我的需求。 您可以在pom.xml中指定依赖项,并在Eclipse的构建路径中自动考虑它们。

警告:我无法告诉RCP(从未为该平台构建任何东西)。

最好的祝福,

西里尔

您是否已经开始使用maven来构建您的RCP应用程序? 我问这个是因为,根据我使用maven构建任何东西而不仅仅是琐碎的RCP应用程序的经验可能会非常痛苦。 当我开始研究RCP应用程序时,我最初使用maven作为构建解决方案进行了调查,但发现在maven中对eclipse构建的支持在当时非常基础。 此外,我的一些同事正在使用maven为我们公司的另一个基于RCP的项目,虽然对eclipse的支持已经变得更好,但他们必须跳过一些环节才能让它按照自己的喜好工作。 所以,我的观点是,现在,坚持使用基于ant的pde构建为您的RCP应用程序。

如今,Tycho允许根据构建的bundle的清单(必需的bundle,导入的包等)解析依赖关系。

此外,Tycho可以配置为使用目标平台进行构建。 这允许使用相同的目标平台进行maven和pde构建。

从v0.24.0开始,Tycho甚至可以构建无POM的插件和function,避免了版本和artifactId元数据的重复。

鉴于上述情况,并考虑到即使Eclipse平台使用它已经使用了几年,Maven Tycho目前是无头地构建RCP的最佳方式。

在我们的项目中,我们将目标平台和应用程序插件分开。 简而言之:我们使用Maven构建目标平台,而应用程序插件则使用PDE构建。

我使用了Mavenide一段时间,它还可以。 不知道今天是怎么回事。

第谷做你需要的。 现在在2012年,它是成熟且可用的maven插件集。 我只能推荐它。

自2009年以来,文档的质量显然没有太大变化。可能很难让Tycho运行。 我们成功地理解了Tycho,并且我们已经成功地使用它来构建一个相当大的Eclipse RCP应用程序超过一年半。 我们采用了清单优先方法,其中所有插件(项目)依赖项都在MANIFEST.MF中定义。 我们构建的最终产品是可执行应用程序,也是一个便于更新的p2站点 。 全部由maven构建完成。

如果您构建Eclipse插件或应用程序(RCP)Maven Tycho是建议它的推荐方法。

它在解析osgi依赖项方面非常聪明。 你可以参考我在Maven Tycho Tutorials上的教程

Maven Tycho需要m2eclipse和Tycho配置器安装。

原型应该是eclipse-plugin或eclipse-feature或eclipse-repository