【发布时间】:2013-03-03 09:53:39
【问题描述】:
我有一个 VS 2012 Web 项目 /sln,我正在尝试在 TeamCity 中构建它。它使用安装在 TeamCity 上的 .NET 4.5。
TeamCity 服务器仅安装了 VS 2010。
构建运行时出现此错误:
C:\BuildAgent\work\d5bc4e1b8005d077\CUSAAdmin.Web\CUSAAdmin.Web.csproj(799, 3):
error MSB4019:
The imported project
"C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found.
Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. Project CUSAAdmin.Web\CUSAAdmin.Web.csproj failed.
Project CUSAAdmin.sln failed.
正在尝试使用 Visual Studio 2012 (v11.0) 构建。
我已在 build.xml 中将 VisualStudioVersion 设置为 10 吗??
<Target Name="BuildPackage">
<MSBuild Projects="CUSAAdmin.sln" ContinueOnError="false"
Targets="Rebuild"
Properties="Configuration=$(Configuration); VisualStudioVersion=10.0" />
在项目内部它默认为 VS2010
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath
Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
【问题讨论】:
-
您的 vs2012 项目正在导入与 VS2012 一起安装的 msbuild 目标文件。除非构建代理在 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets 上有这些新目标,否则它不会构建
-
只需将环境变量设置为10.0 VS版本即可。噗。然后工作。
标签: visual-studio-2010 visual-studio visual-studio-2012 msbuild teamcity