簡體   English   中英

你如何調用被覆蓋的MSBuild目標

[英]How do you call an overridden MSBuild target

在MSBuild中,您可以覆蓋自己的另一個文件中的<Target /> 例如, Microsoft.Common.targets文件中包含的AfterBuild目標只需通過定義具有相同名稱的自己的Target:

<Target Name="AfterBuild">
    <!-- Do something different -->
</TargetName>

你會看到這樣一個音符:

在項目“XXXXX”中使用目標“AfterBuild”覆蓋項目“C:\\ Windows \\ Microsoft.NET \\ Framework \\ v3.5 \\ Microsoft.Common.targets”中的目標“AfterBuild”。

有沒有辦法調用原始的AfterBuild目標?

我想這樣做來檢測某些復雜的默認目標,然后執行原始行為。 像Build這樣的許多目標暴露了可用於此的BuildDependsOn屬性。 許多其他人沒有 - 我想在不完全復制其內容的情況下覆蓋它們。

處理MSBuild腳本時,它還將處理導入的文件。 結果將是整個腳本的單個內存規范表示。 當遇到已存在的目標時,先前的定義將被丟棄,因此無法調用原始目標。

Sayed Ibrahim Hashimi

我的書: Microsoft Build Engine內部:使用MSBuild和Team Foundation Build

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM