尝试使用 TeamCity 和 Web Deploy 部署我的站点时,出现此错误:
error MSB4057: The target "MsDeployPublish" does not exist in the project.
我必须在构建服务器上安装一些东西吗?这是安装了 Web Deploy 3.5 的干净的 Windows Server 2012。
尝试使用 TeamCity 和 Web Deploy 部署我的站点时,出现此错误:
error MSB4057: The target "MsDeployPublish" does not exist in the project.
我必须在构建服务器上安装一些东西吗?这是安装了 Web Deploy 3.5 的干净的 Windows Server 2012。
或者您可以将此 NuGet 包与可移植版本的目标一起使用:https : //www.nuget.org/packages/MSBuild.Microsoft.VisualStudio.Web.targets 并修改您的 csproj 文件以包含它,如下所示:
<Import Project="..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.12.0.1\tools\VSToolsPath\WebApplications\Microsoft.WebApplication.targets" />
我意识到这个问题在这一点上已经很老了,但是:
MsDeployPublish
作为 Visual Studio 的一部分与 Web 应用程序目标一起安装。如果您只安装了 Server + Web Deploy,则需要从开发人员安装中复制它们或安装 Visual Studio。目标可以从%programfiles(x86)%\MSBuild\Microsoft\VisualStudio
顺便说一句,在 Visual Studio 2012 发布之后添加了一些功能,即与发布配置文件 ( .pubxml
) 相关的功能。这些可以通过安装 Azure SDK 添加到 VS2010 并将安装到%programfiles(x86)%\MSBuild\Microsoft\VisualStudio\v10.5\Web
这对我有用,我必须添加行来导入 Microsoft.WebApplication.targets 从一个好的 VS2013 项目中得到它。
<Import Project="$(MSBuildBinPath)\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" />