我现在正在开发一个项目几个月,我们使用“p2-repositories”。我知道我从他们那里得到了我的依赖。但现在我想更深入地研究这个主题,我想知道 p2 存储库到底是什么 - 定义。
我认为这与 OSGi 和 Nexus 有关。但它从哪里来呢?当我使用 p2 存储库时,我是否会绑定到 Nexus?或者这是 OSGi 的通用标准?或者 Eclipse/Maven/第谷?
当我可以拥有 Maven 时,为什么还需要 p2-repositories?或者为什么我不能使用 Maven?
P2 存储库在 Eclipse 生态系统中非常常见。它们结合了工件(捆绑包)、元数据,并且还可以包含 Eclipse 功能。
P2 存储库通常完全独立于 Maven 存储库和 Nexus。 Nexus 对 p2 功能有一些支持,这可能是您与它之间的连接。
在 OSGi 中提供部署的另一种方法是使用 Apache Karaf 功能。这些列出了要安装的捆绑包作为每个捆绑包的 URL。这样的url也可以是带有maven坐标的mvn url。在这种情况下,功能和捆绑包都位于 Maven 中。
第三种方法是使用 OSGi 捆绑存储库。这是一个 OSGi 标准,并在 bndtools 中使用。它们只是托管元数据的索引和捆绑包的 URL。可以和maven集成。
不幸的是,这些部署方式是相互排斥的。因此,您最好使用对于您所开发的平台来说最突出的一个。例如,如果几乎所有依赖项都来自 eclipse 项目,那么 p2 是自然的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)