我编写了一个Nant脚本,它执行MSBUILD.exe以在我的开发机器上编译项目 . 在我的开发机器上,项目将其输出构建到bin \ x86 \ Release,我的Nant脚本会压缩该目录的内容 . 然后我将所有内容提交给SVN并让TeamCity运行执行MSBUILD.exe的Nant脚本来编译项目并压缩输出,但输出是在bin \ Release中创建的,而zip文件是空的,因为它在bin \ x86中查找发布 . 为什么会这样?
当我在VS.NET 2008中更改配置和平台时,我看不到项目文件显示为已更改 . 这些设置是否存储在项目文件,解决方案文件或用户配置文件中,因此不会转移到构建服务器?
2 回答
快速修复:您可以使用标志/属性:OutDir = bin \ x86 \ Release
你必须找到这个的根本原因 . 可能配置不正确 . 您可以明确地将配置更改为/ p:Configuration = Release
你确定$ 指向本地和TeamCity环境中的同一个地方吗?
代理程序并不总是使用sem环境变量作为本地计算机运行 . 因此,我将开始检查所有属性,并查看它们在本地计算机和TeamCity中的位置 .
对于/p:Configuration=$,您只能运行一个配置,但可以指定更多属性;它们之间:
/p:Configuration=$;OutDir=bin\x86\Release