VS 2015 MSDeployPublish未执行

时间:2018-06-15 06:05:32

标签: powershell visual-studio-2015 msbuild

我正在使用VS 2015并在发布Web应用程序后尝试执行PowerShell。我创建了一个发布配置文件,在发布模式下编译,发布方法是一个文件系统,然后在我的项目XML中我添加了一个目标

<Target Name="Mytarget2" AfterTargets="MSDeployPublish">
<Error Text="he name of the publish profile is $(DestinationAppRoot)">
</Error>
</Target>

所以我希望在通过visual studio发布之后出现错误信息,但是没有得到任何内容,如果我使用它,我怎么能调用PowerShell脚本呢?

1 个答案:

答案 0 :(得分:2)

  

VS 2015 MSDeployPublish未执行

这是因为您要从File System发布项目。目标&#34; MSDeployPublish&#34; File System不支持。

  

&#34;我们目前不支持在从VS发布文件系统协议后执行自定义目标。如果从命令行发布,则将执行目标。&#34;

因此,您可以通过指定目标/t:Mytarget2来使用MSBuild命令行来执行此自定义目标:

msbuild "YourSolutionFile" /t:Build,Mytarget2 /p:DeployOnBuild=true /p:PublishProfile=YourPublishFile.pubxml

或者您可以更改VS中的设置以构建高详细程度,并查看要执行的最后一个目标,然后您可以使用它而不是目标MSDeployPublish,例如PipelineTransformPhase,所以自定义目标看起来像:

<Target Name="Mytarget2" AfterTargets="PipelineTransformPhase">
  <Error Text="he name of the publish profile is $(DestinationAppRoot)">
  </Error>
</Target>

希望这有帮助。