【问题标题】:Maven self-contained child artifactMaven自带子神器
【发布时间】:2018-07-22 16:21:39
【问题描述】:

我有一个项目,它有 3 个 pom 文件:父文件(非常基本的文件,只是声明它的子文件)、用于构建项目本身的主 pom 和一个用于生成 swagger 客户端库的 pom 文件。客户端工件正在下载到我们的 Nexus 中。

问题是,当我想在另一个项目中使用客户端库作为依赖项时,它还需要父工件。我不想将它下载到 Nexus 中,因为它太基础了,只会淹没存储库。我尝试打包某种 uber-jar,但它对我不起作用 - jar 很大并且包含所有依赖项,但它仍然需要父工件。有什么解决方法吗?

【问题讨论】:

  • 我真的想问你有很多父 pom 的真正问题是什么?

标签: java maven nexus


【解决方案1】:

虽然我通常不关心存储库中是否有额外的 Parent POM(我们的存储库包含 2000 个不同版本的自创工件,它不是“泛滥的”),但您可以查看

https://www.mojohaus.org/flatten-maven-plugin/

这使您可以使您的 pom 更小,并包括在没有父 POM 的情况下离开的可能性。

【讨论】:

  • @khmarbaise 你可能是对的,我没试过,可能误解了描述。
  • 看起来效果很好。由于某种原因,我不得不清除我的本地存储库,因为它一直在请求父 pom,但毕竟它起作用了。可能需要一些测试,但到目前为止一切都很好。谢谢你,@JFMeier!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-22
  • 1970-01-01
  • 2012-01-05
相关资源
最近更新 更多