一个与基本 maven 概念相关的问题:
一旦发布,我想保证项目构建是完全可重现的。因此,所有项目和插件依赖项,包括传递依赖项,都应该始终以相同的方式解决。
不幸的是,如果依赖关系以版本范围表示,情况并非如此。即使设置了项目的直接依赖项(使用versions:use-releases),也可能发生传递依赖项将来仍可以通过其他方式解决的情况。
如何解决问题?有已知的解决方案吗?
我在想(只是一个想法),关于创建一个插件,它在发布时会将项目的所有依赖项转储到一个单独的文件中,然后一旦在未来构建,从文件中读取的依赖项将优先于标准maven 用来解决依赖关系的方式。但恐怕没有插件api。所以它需要一些黑客攻击,我想避免。还有其他方法吗?
谢谢,卢卡斯