【问题标题】:Installing Maven artifacts to local repo programmatically以编程方式将 Maven 工件安装到本地仓库
【发布时间】:2012-09-07 11:45:42
【问题描述】:

我所需要的是需要在编译前使用Groovy脚本或Maven插件生成一个jar,然后将其安装到本地存储库中,以便在编译过程中使用它(即依赖将由构建过程,而不是通过任何外部存储库下载)。 在编译/依赖解析开始之前,我已经使用了一个 groovy 脚本来创建这个 jar。

由于在创建 Mojo 之外使用 Maven 的 API 文档非常少,我想要一些将这个 jar 放入本地存储库的指针。

提前致谢,md_5。

编辑:我还想知道工件是否事先在 maven repo 中。

【问题讨论】:

  • 请澄清。这一切都是在 Maven 中运行单个模块构建的过程中完成的吗?
  • 是的,这是在一个 maven 生命周期中执行的脚本/插件中。
  • @md_5 你有什么理由不能只使用 Nexus、Artifactory 或 Archiva 设置 Maven 存储库吗?
  • 因为我不能“合法地”分发这个修改过的 jar。相反,我计划简单地将原始 jar 的二进制补丁用于我需要的那个。我已经完成了它的补丁部分,我只需要将它放入用户 repo 中。
  • 因此,如果我在字里行间正确阅读,您可以合法地分发未修改的 jar,但不能分发修改后的 jar。因此,您希望将未修改的 jar 作为项目的一部分提供给用户,然后将其作为用户机器上构建过程的一部分进行修改。我接近了吗?

标签: java maven maven-plugin


【解决方案1】:

我认为您需要使用maven-invoker-plugin,它会启动一个新的 Maven 实例,您可以在其中使用原生 Maven 插件生成工件、构建它并安装到本地存储库中。

【讨论】:

    猜你喜欢
    • 2011-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-20
    • 1970-01-01
    • 2017-05-02
    • 1970-01-01
    相关资源
    最近更新 更多