Msbuild Team City构建代理工作目录未更改

Msbuild Team City构建代理工作目录未更改,msbuild,teamcity,Msbuild,Teamcity,我想将team city build agent的build dir更改为: E://MY_PROJECT_SVN 在安装构建代理时,我设置了相同的设置,但它在TeamCity web ui中显示C://buildAgent/work,因此我的构建失败 我的buildAgent.properties文件显示 workDir=E\:\\MY\u PROJECT\u SVN 并且buildAgent.dist.properties文件显示 workDir=E://MY\u PROJECT\u SV

我想将team city build agent的build dir更改为:

E://MY_PROJECT_SVN
在安装构建代理时,我设置了相同的设置,但它在TeamCity web ui中显示C://buildAgent/work,因此我的构建失败

我的buildAgent.properties文件显示

workDir=E\:\\MY\u PROJECT\u SVN

并且buildAgent.dist.properties文件显示

workDir=E://MY\u PROJECT\u SVN

但当我运行TeamCity时,会出现以下错误

无法启动MSBuild.exe。在以下路径中找不到项目文件: C:\BuildAgent\work\3ac16e0b4e3af05b\Modules\SIM5.sln


由于错误的工作目录

未使用文件buildAgent.dist.properties,这只是一个示例。因此,不要担心该文件的内容

您在buildAgent.properties中设置的内容才是最重要的。对您来说,代理正在恢复到工作目录的默认位置

这意味着由于某种原因,它无法读取或解析buildAgent.properties文件。100%确保整个文件中没有错误

对该文件进行任何更改并保存该文件将导致生成代理自动重新启动,并在重新启动后重新加载新配置


buildAgent.dist.properties确实只是一个例子,但解决方案是您几乎拥有的;您需要将其放入buildAgent.properties中:

workDir=E:/MY\u PROJECT\u SVN

更新:


需要注意的是,在TeamCity 7.0上,workDir似乎不能放在单独的磁盘上;它在构建的大部分过程中运行,然后失败。但是,使用连接点从本地(默认)文件夹指向E:驱动器将起作用。不过,tempDir可以指向远程磁盘。

根据paul-f-wood的答案:

Teamcity 9.1.6还具有工作目录不能位于其他驱动器上的“功能”。我尝试了temp和work dir的几种排列,唯一卡住的是work dir与root teamcity文件夹位于同一驱动器上。然而,正如保罗所说,使用连接就像一个符咒

cmd:rm C:\BuildAgent\work


cmd:mklink/J C:\BuildAgent\work E:\MY\u PROJECT\u SVN

目标定义中声明的签出目录是什么?@Biswajit\u 86目标定义是什么意思?奇怪的是,我可以更改临时目录,但不能更改工作目录。尝试绝对和相对路径。似乎work dir必须以c:\TeamCity开头,否则它会拒绝任何更改。我可以验证我是否已将所有TeamCity代理的workDir设置到其他位置,并且效果良好。我有一行代码:workDir=D:\TC不确定您具体遇到了什么问题。如果您从buildAgent.properties文件中删除任何敏感数据并将其发布到此处,我可以查看并尝试查找错误…谢谢,我继续更改文件夹,但我确实为此花费了一个小时,除了c:\TeamCity\。。。可能是我版本的build agent或对其他设置的依赖。。但我放弃了