仅限单个maven依赖本地

时间:2017-02-19 15:49:40

标签: java maven

我的项目中有很多依赖项,几乎所有依赖项都可以从远程存储库中获取。但是,其中一个存储库包含一个依赖项,我使用提供的工具在本地构建一个自定义版本(因此我不仅仅是将它构建到自定义位置,并认为这是最后的手段)。 / p>

我想从远程存储库中获取所有依赖项,除了我在本地构建的依赖项。我无法删除包含它的存储库,因为它包含了我 DO 想要更新的更多依赖项。

此外,这是一个与他人共享的项目,因此系统范围和systemPath属性无法正常工作。

我无法在离线模式下运行maven,因为我确实希望定期更新所有其他依赖项。

感谢。

1 个答案:

答案 0 :(得分:0)

让我先从一个建议开始,不要尝试用自定义逻辑覆盖现有坐标,从而构建。它总会增加混乱,最糟糕的运行时异常将使调试问题变得困难。你应该

  1. 更改此自定义构建项目的坐标 - 最佳解决方案。这将被视为任何其他依赖。
  2. 如果您无法更改坐标,请更改版本。请添加qualifier以使其能够从原始来源进一步发布此库。
  3. 始终希望在dependency management section中添加此依赖项。这将始终使此库优先于依赖中介。
  4. 您可以使用relocation mechanism分发管理。这将给人们一个有用的信息。整个公司都有一个共享的settings.xml。