我可以在Visual Studio 2010中无问题地发布,但是当我尝试使用Visual Studio 2013发布时,我收到以下消息:
目标“MSDeployPublish”在项目中不存在。 \Source2\Web Projects\SubService\subservice\subservice.csproj 0 0 subservice
有人能告诉我需要做什么来解决这个问题吗?这在两个不同的项目中都发生了。
我可以在Visual Studio 2010中无问题地发布,但是当我尝试使用Visual Studio 2013发布时,我收到以下消息:
目标“MSDeployPublish”在项目中不存在。 \Source2\Web Projects\SubService\subservice\subservice.csproj 0 0 subservice
有人能告诉我需要做什么来解决这个问题吗?这在两个不同的项目中都发生了。
就我所知:
我曾遇到同样的问题。刚安装的 Windows 8.1 电脑,只安装了 Visual Studio 2013 (+update1) + Azure SDK's。创建新的 Web Api 项目砰构建错误 -
"C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets"导入的项目未找到。请确认声明中的路径正确,并且文件存在于磁盘上。
注意v10.0。这是当未设置MSBuild参数“VisualStudioVersion”时的默认回退。在VS2012之前,目标文件的路径是硬编码的。其他解决此错误的方法说要从 csproj 中删除以下内容(为向后兼容而添加):。
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
但是如果移除这个部分,可以修复您的构建问题,但会破坏原始海报的发布功能,并出现以下错误:
项目中不存在目标 "MSDeployPublish"
注意:我已经从 Web 平台安装程序中安装了所有 Azure 相关的 SDK 部分��
我不得不重新添加上述 XML 部分到我的 csproj 文件中,但将 10.0 改为 12.0 (即 vs2013)。
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">12.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
这可能会破坏向后兼容性,但最终使我的Visual Studio 2013编译代码并使发布功能再次正常工作。
<Import Project="..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.12.0.1\tools\VSToolsPath\WebApplications\Microsoft.WebApplication.targets" />
解决方案最初发布在这里: MsDeployPublish位于哪里? (在我的情况下已经是MSBuild.Microsoft.VisualStudio.Web.targets.14.0.0 )。
经过4个小时的搜索,我找到了一篇与此不直接相关的帖子,但我冒险尝试了一下,结果奏效:
从“Web平台安装程序”中安装,“Windows Azure SDK for .Net (VS 2013)”这个选项可以解决问题!