对于构建服务器上的构建作业,我想将.m2
位置设置为与user.home/.m2
不同的位置。
我认为我可以通过为构建设置export HOME=$WORKSPACE
来欺骗maven,但工件仍然被下载并部署到构建用户的主目录。
因此我认为maven使用的user.home
系统属性似乎没有考虑$HOME
。
有解决方案吗?我们有一个本地maven缓存,我确实想要下载这个构建作业的所有工件,并阻止任何部署到构建用户的$HOME/.m2
中,以便将各个构建作业彼此分开。至少我想要一些工作。
有什么想法吗?提前谢谢!
答案 0 :(得分:6)
您可以从命令行覆盖settings.xml文件的位置...
mvn <target> --settings /path/to/settings.xml
从这里您可以自定义您需要的任何内容。
[更新]您甚至可以覆盖“全局”设置,这些设置通常通过--global-settings /path/to/global/settings.xml
答案 1 :(得分:5)
如果您只想指定自己的本地存储库,可以使用选项maven.repo.local
:
-Dmaven.repo.local=/path/to/your/repository
资源: