發佈我的Web應用程序項目後,世界上最簡單的任務(請參見下文)未被執行。任何想法爲什麼?AfterPublish target not working
<Target Name="AfterPublish">
<Copy SourceFiles="C:\A.txt" DestinationFiles="C:\B.txt" />
</Target>
發佈我的Web應用程序項目後,世界上最簡單的任務(請參見下文)未被執行。任何想法爲什麼?AfterPublish target not working
<Target Name="AfterPublish">
<Copy SourceFiles="C:\A.txt" DestinationFiles="C:\B.txt" />
</Target>
<Import ... />
啓動的MSBuild詳細的冗長明白爲什麼你的目標被忽略了:
msbuild project.csproj /t:Target_to_Launch /v:d
AfterPublish
被稱爲Publish
目標,但Publish
不是目標calle d當您發佈Web應用程序時。 Publish
是發佈對象ClickOnce應用程序。
你必須找到你時,在Visual Studio中調用Publish
使用的目標,也可能是Package
,WebPublish
...
注:以下數據適用於VS2010和發佈網絡應用項目與「 Web部署「在」Build/Publish {projectname}「對話框中選擇的發佈方法。
Julien Hoarau在「發佈」中的正確性不是在上述情況下調用的msbuild目標的名稱;實際目標名稱是「MSDeployPublish」。
因此,你必須定義一個「目標」元素,其「AfterTarget」屬性的值設置爲「MSDeployPublish」 - 「名稱」屬性的值不不事情(只要它是在目標名稱中是唯一的)。
這裏是如何做到這一點:
</Project>
標籤之前,添加<Target Name="CustomPostPublishAction" AfterTargets="MSDeployPublish">
元素;爲「CustomPostPublishAction」選擇一個您選擇的名稱。<Exec Command="..." />
元素。實施例:
<Target Name="CustomPostPublishActions" AfterTargets="MSDeployPublish" >
<Exec Command="echo Post-PUBLISH event: Active configuration is: $(ConfigurationName)" />
</Target>
注:(?)
<Target>
元素的文檔,請參閱http://msdn.microsoft.com/en-us/library/t50z2hka.aspx嗨,你知道是否有辦法使它與FTP發佈工作? – 2012-04-14 17:12:40
我想使這項工作的文件系統發佈..任何ideia如何?謝謝。 – 2016-10-20 14:05:46
@MauricioRamalho:我建議你問一個_new問題_(創建一個新帖子)的具體細節。 (我個人不會有太多的幫助,因爲我多年沒有與這些東西合作過,但我相信有人能夠幫助你。) – mklement0 2016-10-20 14:20:30
我有點懶,現在要弄清楚的目標爛攤子找到合適的一個基於文件的發佈(您可能感興趣的)。同時你可以做的是在* .pubxml文件中定義一個AfterBuild目標。
<Target Name="AfterBuild">
...
,因爲如果你將文件複製到目錄正在出版我還建議關閉屬性「DeleteExistingFiles」,它確實乾淨的地方在發佈過程中。
<DeleteExistingFiles>False</DeleteExistingFiles>
Visual Studio 2013.將Web應用程序發佈到文件系統。
<Target Name="Moose" AfterTargets="GatherAllFilesToPublish" >
<Message Importance="high" Text="***Moooooooooooooooose***$(WPPAllFilesInSingleFolder)***$(TargetDir)" />
</Target>
注意:確保生成日誌記錄至少設置爲「詳細」。在Tools - > Options - > Projects和Solutinos - > Build and Run - > MSBuild輸出詳細度下找到它。如果您想調查在實際發佈之前上次運行哪個構建目標,診斷也很好。
它正好在Import標籤之後。 – Mark 2010-08-25 14:32:31
以下是輸出中的一些亮點: 項目「c:\ ... \ Microsoft.Common.targets」中的項目「C:\ ... \ Ara.Web」中的目標「AfterPublish」覆蓋目標「AfterPublish」 .csproj的」。 項目「C:\ ... \ Ara.Web.csproj」文件「c:\ ... \ Microsoft.Common.targets」中的目標「_DeploymentUnpublishable」: 任務「消息」 跳過不可發佈的項目。 我可以從Visual Studio中發佈它,但AfterPublish任務不起作用。 – Mark 2010-08-26 21:49:13