1
我的自定義MSBuild任務在實際構建之前和之後執行一些步驟。構建之後的步驟始終執行以清理某些文件是非常重要的。我現在有定義的兩個目標:始終執行構建失敗後運行MSBuild目標
<Target Name="NrtPatchAssemblyInfo" BeforeTargets="BeforeBuild">
和
<Target Name="NrtRestoreAssemblyInfo" AfterTargets="AfterBuild">
第一個,但第二隻成功的建後運行。如果編譯器生成失敗,例如由於代碼文件中的語法錯誤,則不運行第二個目標。
我能做些什麼來改變這種情況,並始終執行第二項任務?
我找不到MSBuild通常使用的目標名稱列表。這些名稱只是從其他來源複製而來。
當一個失敗時沒有更多的目標?那麼我該如何做清理工作或任何錯誤後需要完成的工作呢?複製Visual Studio基礎結構不是我的選擇(但)。 – ygoe
您也可以刪除需要清理工作:更容易修復imo。製作你想要修補程序集信息的任何文件的副本,將其複製到中間目錄等等,然後在構建中使用該副本。如果副本的更改沒有得到恢復,則無關緊要。 – stijn
我終於回到了這個話題。我已將工具更改爲不修補和恢復文件,但將修改後的文件保存爲obj \,並使用該文件(包括)而不是原始文件(刪除)。 – ygoe