将Maven依赖项添加到Eclipse RCP插件的最佳实践

J0n*_*n8s 5 dependencies eclipse-plugin eclipse-rcp tycho maven

我想将一些GitHub项目作为依赖项添加到我的Eclipse RCP插件中。GitHub项目是oshileshan

两个GitHub项目都提供了我可以使用的基于Maven Central的Maven构建。

但是到目前为止,据我了解,我不能直接在Eclipse RCP插件中使用这些构建,因为它需要OSGI捆绑软件-与“经典” Eclipse Java项目相反。

到目前为止,我发现了三种解决此问题的方法:

  • 让Eclipse将JAR转换为OSGI-Bundle并将其添加到我可以依赖的插件中(在这里描述/sf/answers/251628891/

  • 查看GitHub项目是否在Eclipse Orbit上可用,并将p2存储库添加到我的目标平台。(在这里/sf/answers/3979848561/进行描述)可悲的是,在Orbit网站上,只有oshi项目比GitHub上的版本更旧。

  • 使用p2-maven-plugin创建我自己的p2存储库,并将其添加到我的目标平台。

我也研究了Tycho,但据我了解,您只能在pycho中添加一个p2存储库作为依赖项,这又导致了创建它的问题。

在Eclipse RCP插件中,还有另一种/更好的方式来处理非OSGI捆绑Maven构建吗?

编辑:我为我找到了使用gradle(gradle插件bnd-platform),使用maven Central 自动解决依赖关系并创建本地p2存储库的最佳方法,如选项1此处https://stackoverflow.com/a所述/ 29509794/12029492

vog*_*lla 6

最近,Eclipse Maven (M2E) 实现了从 Maven 中心到目标平台的 Java 库的紧密集成。有了这个,您可以轻松地将 Java 库添加到您的目标平台,并且可以将它们即时转换(如果需要)到 OSGi 包(包括它们的依赖项)。

请参阅https://www.vogella.com/tutorials/EclipseJarToPlugin/article.html了解如何使用 Java 库(来自 Maven Central)进行 OSGi、Eclipse 插件和 Eclipse RCP 开发。

用于命令行构建的最新 Maven Tycho 版本也支持此扩展,请参阅https://www.vogella.com/tutorials/EclipseTycho/article.html