指定要優先建置的目標
專案檔可以包含一或多個 Target
項目來定義專案的建置方式。 除非專案檔內含 DefaultTargets
屬性、InitialTargets
屬性,或在命令列中使用 -target 參數來指定目標,否則 Microsoft Build Engine (MSBuild) 引擎會建置它找到的第一個專案以及任何相依性。
使用 InitialTargets 屬性
Project
項目的 InitialTargets
屬性會指定優先執行的目標,即使已在命令列上或 DefaultTargets
屬性中指定目標也一樣。
指定一個初始目標
在
Project
項目的InitialTargets
屬性中,指定預設的目標。 例如:<Project InitialTargets="Clean">
您可以在
InitialTargets
屬性中指定多個初始目標,方法是依序列出目標,然後使用分號來分隔每個目標。 清單中的目標將會循序執行。
指定多個初始目標
在
Project
項目的InitialTargets
屬性中,列出以分號分隔的初始目標。 例如,若要依序執行Clean
目標和Compile
目標,請輸入:<Project InitialTargets="Clean;Compile">
使用 DefaultTargets 屬性
如果未在命令列上明確指定目標,則 Project
項目的 DefaultTargets
屬性會指定要建置哪些目標。 如果已在 InitialTargets
和 DefaultTargets
屬性上指定目標,且未在命令列上指定目標,則 MSBuild 會執行 InitialTargets
屬性中指定的目標,接著執行 DefaultTargets
屬性中指定的目標。
指定一個預設目標
在
Project
項目的DefaultTargets
屬性中,指定預設的目標。 例如:<Project DefaultTargets="Compile">
您可以在
DefaultTargets
屬性中指定多個預設目標,方法是依序列出目標,然後使用分號來分隔每個目標。 清單中的目標將會循序執行。
指定多個預設目標
在
Project
項目的DefaultTargets
屬性中,列出以分號分隔的預設目標。 例如,若要依序執行Clean
目標和Compile
目標,請輸入:<Project DefaultTargets="Clean;Compile">
使用 -target 參數
如果專案檔中未定義預設目標,或者,如果您不想使用預設目標,您可以使用命令列參數 -target 來指定不同的目標。 使用 -target 參數指定的目標即會執行,而不是執行 DefaultTargets
屬性所指定的目標。 InitialTargets
屬性中執行的目標永遠會先執行。
優先使用非預設的目標
使用 -target 命令列參數,將目標指定為第一個目標。 例如:
msbuild file.proj -target:Clean
優先使用預設目標以外的數個目標
使用 -target 命令列參數,列出以分號或逗號分隔的目標。 例如:
msbuild <file name>.proj -t:Clean;Compile