1

项目中不存在目标“MSDeployPublish”

我看到人们引用此链接,因为它可以解决我的问题。我阅读了完整的线程并尝试了那里给出的每一个想法。没有任何效果。我也使用 VS 2015 社区而不是 VS 2013。

我正在尝试通过 VS 2015 社区发布 Web API。我以前做过,但这次似乎不起作用。

我从服务器上的 IIS 获得了发布设置,并且连接验证工作正常。

当我进行发布时,我收到此错误:

项目中不存在目标“MSDeployPublish”

我尝试了几件事,但提到最多的是(重新)安装Microsoft.Web.WebJobs.PublishNuGet 包并检查 CSPROJ 文件中的这两行:

<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>

您已经猜到这不适用于我的情况(否则我不会在这里发布)。

我注意到的第一件事是 10.0 版本。我回溯了路径,我的磁盘上没有 10.0 版本。只有 12、14 和 15。14 似乎有目标,所以我将版本更改为 14...同样的错误。

我尝试安装几个软件包,再次检查 CSPROJ 文件,但似乎没有任何反应。同样的错误一遍又一遍(在这里有点沮丧......)

有人对此有其他解决方案吗?

* 更新 *

它似乎适用于其他项目。这个特定项目似乎有问题。

* 更新 2 *

我设置了与主机的 FTP 连接,因为我正在尝试其他操作。我尝试使用 FTP 发布,但给出了几乎相同的错误:

项目中不存在目标“GatherAllFilesToPublish”。

4

1 回答 1

5

有人对此有其他解决方案吗?

我之前也遇到过这个错误,我通过下面的方法解决了。不确定它是否适合您,但您可以尝试一下。

一、安装包(以管理员身份运行VS):</p>

install-package MSBuild.Microsoft.VisualStudio.Web.targets

install-package Microsoft.Web.WebJobs.Publish

二、编辑WebJob项目文件:

 <PropertyGroup>
    <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
    <VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>

笔记:

  1. 确保您的 VisualStudio 以“管理员”身份运行,否则 install.ps1 在安装该软件包时可能会引发错误。
  2. <VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>仅当条件为空时,VisualStudioVersion 的值才会设置为 10.0,而不是将此值设置为 10.0。

希望这可以帮到你。

于 2017-05-02T07:19:36.133 回答