[英]Calling a target from csproj file
這個問題與我要發布的clickonce項目有關。
基本上,我希望有一個針對每個測試環境進行發布的目標運行,以便可以相應地設置publishurl和publishdir。
構建項目時,我希望能夠調用此新目標,而無需使用DefaultTargets或將其添加為msbuild參數。 沒有這些步驟,如何呼叫特定目標?
例如:您可以從另一個目標調用目標,例如:
<Target Name="ClientPublish">
<CallTarget Targets="PublishForEachEnv" />
</Target>
但是我如何直接從csproj調用PublishForEachEnv目標?
希望這有意義
我不太確定您的意思是什么,但我會盡力而為。
要編輯csproj,請在“解決方案資源管理器”中右鍵單擊它,然后選擇“ 卸載項目” 。 然后,一旦它變灰並且在解決方案資源管理器中不可用,再次右鍵單擊它,然后選擇“ 編輯[您的項目名稱]” 。
該文件為XML,您可以在其中進行所有排序。 如果您看向底部,將會看到一些目標文件導入,並且還應該為BeforeBuild和AfterBuild分別看到一個空目標。 您可以在此處將調用添加到自定義目標,AfterBuild可能最適合您。 您可以將自定義目標內聯包含在csproj或導入文件中。
您必須返回到解決方案資源管理器,右鍵單擊該項目,然后選擇“ 重新加載項目”以使更改生效。
此外,還有另一個選項:添加一個構建后事件,該事件將您感興趣的值打印到構建輸出窗口中:
因此,這意味着解決方案資源管理器,右鍵單擊該項目,依次選擇“屬性”,“構建事件”,然后編輯“構建后”。
您應該可以通過輸入以下行來獲得所需的內容
echo“我的發布URL為:'$(PublishUrl)'”
請注意,在宏列表中您無法使用PublishUrl
,但是您仍然可以通過手動輸入它來使用它-該列表僅包含公共宏。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.