找不到MSBuild目标包

我想打包我的VS2010 Web应用程序项目,准备用msdeploy进行部署。 在开发机器上,我可以这样做:

MSBuild.exe "C:\path\to\WebApp.csproj" /target:package 

但在我的生成服务器上,我得到这个错误:

错误MSB4057:项目中不存在目标“包”。

我在构build服务器上丢失了什么?

我只是通过在构build服务器上执行以下步骤来安装VS2010而无需安装它:

  1. 如果未安装.NET Framework 4,请进行安装
  2. http://www.iis.net/download/webdeploy安装Web部署工具;
  3. 从开发机器上的C:\ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0文件夹中,将“Web”和“Web Applications”文件夹复制到构build服务器上的等效目录中。

这似乎对我有用

我知道这是一个古老的问题,但我最近遇到了同样的问题,没有任何答案帮助。 我在构build服务器上丢失了以下文件:

 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio \v11.0\Web\Microsoft.Web.Publishing.targets 

它是由

 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio \v11.0\WebApplications\Microsoft.WebApplication.targets 

希望这可以帮助像我这样的人:)

您需要在生成服务器上安装.Net 4.0。 .Net 4.0安装将把新的MSBuild 4.0支持打包Web应用程序项目。

另外,当你正在运行msbuild.exe时,确保你运行的是.NET 4.0框架文件夹中的那个。

我遇到了同样的问题。 最后加上解决方法:

 <PropertyGroup> <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion> <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath> </PropertyGroup> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" /> <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" /> 

到我的.csproj fiie。

您可以安装MSBuild.Microsoft.VisualStudio.Web.targets包。 不需要手动复制目标来构build服务器。

还要考虑使用带有版本的msbuild,对应于Web部署工具版本。 我面临与OP一样的问题。 解决方法是在buildServer上将msbuild从4.5更改为4.0。

要解决此问题,请在构build服务器上安装Visual Studio 2010,并确保安装了Visual Web Developerfunction。