【发布时间】:2015-10-28 16:25:08
【问题描述】:
我有一个项目,其中包含几十个 Eclipse 插件,所有插件相互关联并位于不同的子文件夹中。几年前,该版本已转换为多模块清单优先 Tycho 版本,并且运行良好。
其中一个插件相当关键,也可以构建为不使用 Eclipse 运行时的独立 Java 应用程序。目前它有自己的 POM 文件 (pom-standalone.xml),因此 Jenkins 可以单独构建独立应用程序,而 Tycho 构建对此一无所知 - pom-standalone 只列出了以前构建的插件 jars(感谢 Tycho!)和 Eclipse 库它需要作为依赖项。但是这种方法存在几个问题:
-
我无法轻松使用 IntelliJ 处理具有 Maven 依赖项管理的独立项目,因为它无法将自定义
pom-standalone.xml文件名识别为 POM。- 为了 Tycho 和 Eclipse Manifest 文件,该项目所依赖的许多 jar 被签入到项目中,但它们也由 Maven 管理以用于独立构建。因此,必须将任何依赖项添加到
pom-standalone.xml文件中并输入 OSGi 清单并签入源代码控制以用于 Eclipse。
- 为了 Tycho 和 Eclipse Manifest 文件,该项目所依赖的许多 jar 被签入到项目中,但它们也由 Maven 管理以用于独立构建。因此,必须将任何依赖项添加到
似乎一个简单的解决方法是告诉 Tycho/modules 为子模块的 POM 或所有多模块 POM 文件使用除 pom.xml 之外的其他东西,因为 Eclipse 无论如何都不使用这些 - 然后是 @987654327 @ 可以转换为 pom.xml 然后 IntelliJ 就可以了。
我知道您可以为 Maven 构建指定 -f 属性,但这真的适用于所有子模块吗?可以只为 ONE 子模块指定 POM 文件名吗?
是否有替代解决方案? Eclipse/Tycho/p2 构建似乎有点令人头疼,需要手动库管理和签入库以进行源代码控制,但在过去几年中,Eclipse 构建世界中可能发生了一些我不知道的变化。
找到了一个没有多大帮助的Similar Question。
【问题讨论】: