在proj文件中没有Windows工具包引用的情况下TeamCity构建失败

时间:2016-06-09 16:46:57

标签: msbuild teamcity-9.0

我在团队城市遇到问题(9.1.7)。我没有在构建服务器上安装visual studio。我安装了visual studio测试代理和msbuild工具。构建其中一个项目失败,出现此错误 -

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\AppxPackage\Microsoft.AppXPackage.Targets(694, 9): error APPX1639: File 'Windows.props' not found. See http://go.microsoft.com/fwlink/?prd=12395&pver=1.0&plcid=0x409&ar=MSDN&sar=PlatformMultiTargeting&o1=Portable&o2=7.0 for more information

这个链接不起作用。查找错误后,似乎我需要安装Windows Kits,我需要将其添加到第一个属性组下的csproj文件中 -

<_WindowsKitBinPath>C:\Program Files (x86)\Windows Kits\8.1\bin\x86</_WindowsKitBinPath>
<_WindowsPhoneKitBinPath>C:\Program Files (x86)\Windows Phone Kits\8.1\bin</_WindowsPhoneKitBinPath>
<MakePriExeFullPath>$(_WindowsKitBinPath)\makepri.exe</MakePriExeFullPath>
<MakeAppxExeFullPath>$(_WindowsKitBinPath)\makeappx.exe</MakeAppxExeFullPath>
<SignAppxPackageExeFullPath>$(_WindowsKitBinPath)\signtool.exe</SignAppxPackageExeFullPath>
<MakePriExtensionPath>$(_WindowsPhoneKitBinPath)\x86\MrmEnvironmentExtDl.dll</MakePriExtensionPath>
<MakePriExtensionPath_x64>$(_WindowsPhoneKitBinPath)\x64\MrmEnvironmentExtDl.dll</MakePriExtensionPath_x64>

我真的不想将此添加到我的csproj文件中。我不知道为什么需要它/它有什么影响。有人可以向我解释为什么需要它吗?当我使用visual studio在本地构建我的解决方案时,它工作正常。

1 个答案:

答案 0 :(得分:0)

设置组基本上是MSBuild为了编译项目而需要的引导参数(本机windows phone app ??)。您可能已经在本地安装了该套件,并且已经集成到Visual Studio中,这就是它构建的原因。卸载Visual Studio加载项,它可能会开始失败。

您可以设置编译步骤以传递这些参数,而不需要它们在.csproj文件中,如果您不想在那里。

enter image description here

我通常会将其他构建参数抽象为TeamCity中的变量

enter image description here

希望这有帮助