我想设置每个TeamCity代理使用本地存储库(maven.repo.local)在代理的工作目录(agent.work.dir)中。 是否可以配置maven属性以此方式使用TeamCity属性?
在设置 Runner: Maven2
/ JVM命令行参数
中输入 -Dmaven.repo.local=%system.agent.work.dir%/.m2
我不使用TeamCity,而是使用Bamboo。我实现这个的方式是,在maven目标中定义了以下内容:
-Dmaven.repo.local=${bamboo.M2REPOHOME}/${bamboo.buildKey} ...
然后定义属性M2REPOHOME为文件系统上的某个位置,bamboo.buildKey是项目名称。我将我的m2存储库都放在一个地方,以便轻松删除它们。您应该通过将maven.repo.local
设置为agent.work.dir
或其他位置来执行类似操作。快速查看TeamCity文档,您可以这样做:
-Dmaven.repo.local=%agent.work.dir%/m2
%system.agent.work.dir%
已经过时,应该改用%teamcity.agent.work.dir%
。 - kevinarpe