15

我目前正在评估 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 天时间并没有让它运行(此时的当前版本)。也许半年左右就可以准备好。

4

8 回答 8

7

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

于 2009-02-13T19:06:36.220 回答
2

我使用m2eclipse,它非常适合我的需求。您在 pom.xml 中指定依赖项,它们会自动在 Eclipse 的构建路径中考虑在内。

警告:我不能告诉任何关于 RCP 的事情(从来没有为那个平台构建过任何东西)。

最好的祝福,

西里尔

于 2009-02-20T08:42:51.343 回答
2

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

于 2009-02-20T23:29:18.467 回答
1

如今,Tycho 允许基于构建的捆绑包的清单(必需的捆绑包、导入的包等)解决依赖关系。

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

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

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

于 2017-12-01T14:35:04.623 回答
0

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

于 2009-02-17T08:10:33.753 回答
0

我用了一段时间的Mavenide,还可以。不过不知道今天怎么样。

于 2009-02-17T14:32:00.547 回答
0

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

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

于 2012-04-26T23:07:30.767 回答
0

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

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

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

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

于 2017-12-09T18:19:19.593 回答