【问题标题】:Maven/Tycho/Eclipse : how to use published P2 Repo published in Maven repo?Maven/Tycho/Eclipse:如何使用在 Maven 存储库中发布的已发布 P2 存储库?
【发布时间】:2012-03-20 21:13:26
【问题描述】:

我想知道如何制作结婚的eclipse开发目标定义和maven/tycho存储库。

假设两个团队 A 和 B。团队 A 为团队 B 开发目标平台。

在没有 Eclipse 作为开发环境的纯 maven 开发中,maven 存储库是让两个团队进行交流的理想工具:当 A 发布一个 bundle 时,这个 bundle 发布在 maven 存储库中,并且可供 B 团队使用开始他的专家一代。

但是 B 组在 Eclipse 下开发存在问题。 Eclipse 无法看到团队 A 在存储库中发布的捆绑包。结果是Eclipse无法正确编译和链接……事实上,Eclipse作为开发环境变得低效了。

我知道 Tycho 将 P2 存储库发布到 Maven 存储库中。但是,如何使用这个已发布的 P2 存储库???据我所知,无法定义指向此已发布 P2 存储库的 Eclipse 目标定义...

有什么解决办法吗?你有同样的问题吗?

非常感谢您的帮助。

【问题讨论】:

  • Tycho 允许您使用 p2 存储库并创建许多与 Eclipse 相关的工件,例如产品。 Tycho 无法将 p2 存储库转换为 maven 存储库。

标签: eclipse maven tycho


【解决方案1】:

应该可以使用生成的 P2 存储库。您是否为捆绑包创建了功能?如果您想配置您的目标平台,Eclipse 只识别功能。

如果您将 Nexus 用作存储库管理器并使用 Nexus 的 OSGI 元数据插件,那么这是不可能的,因为 Nexus 的元数据插件不会为功能生成元数据。但是正在进行开发以将其引入插件。

【讨论】:

  • Maven 仓库中发布的 P2 仓库已压缩。如果我想要一个目标平台指向这个 repo,我必须解压缩它并将它复制到 Web 服务器上。好吧,我期待更简单的事情!关于 Nexus,你说的是专业版还是免费版?
  • 生成 OSGI 元数据的插件是由 Sonatype 开源的,带有新的 Nexus 2 版本,因此您现在可以在免费版本中使用它(它仅在早期版本的 Pro 中可用)。跨度>
【解决方案2】:

这个问题很像Handling non-OSGi dependencies when integrating Maven, Tycho and Eclipse

我使用 nexus 和它的 p2 插件,它提供了一个 maven 和 p2 存储库。 (您可以付费使用 p2 运行 nexus,也可以安装运行良好的旧版 beta 插件。)

重要的是:

  • 使用 maven 和 p2 存储库
  • 正确设置您的 pom.xml 文件
  • 使用 maven tycho 插件

上面的链接包含有关如何执行此操作的讨论。

仅供参考,可以在目标平台定义中指向 nexus p2。

  • 打开您的目标定义
  • 在位置中,选择添加,然后选择您的 nexus p2 更新站点

【讨论】:

    猜你喜欢
    • 2016-09-29
    • 1970-01-01
    • 2022-01-28
    • 2019-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 1970-01-01
    相关资源
    最近更新 更多