Elemen proyek (MSBuild)
Elemen akar yang diperlukan dari file proyek MSBuild.
Sintaks
<Project InitialTargets="TargetA;TargetB"
DefaultTargets="TargetC;TargetD"
TreatAsLocalProperty="PropertyA;PropertyB"
ToolsVersion="<version number>"
Sdk="name[/version]"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Sdk... />
<Choose>... </Choose>
<PropertyGroup>... </PropertyGroup>
<ItemGroup>... </ItemGroup>
<Target>... </Target>
<UsingTask.../>
<ProjectExtensions>... </ProjectExtensions>
<Import... />
</Project>
Atribut dan elemen
Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.
Atribut
Atribut | Deskripsi |
---|---|
DefaultTargets |
Atribut opsional. Target default atau beberapa target akan menjadi titik masuk build jika tidak ada target yang ditentukan. Beberapa target dipisahkan dengan titik koma (;). Jika tidak ada target default yang ditentukan dalam atribut DefaultTargets atau baris perintah MSBuild, mesin akan menjalankan target pertama dalam file proyek setelah elemen Impor dievaluasi. |
InitialTargets |
Atribut opsional. Target awal atau target akan dijalankan sebelum target ditentukan dalam atribut DefaultTargets atau pada baris perintah. Beberapa target dipisahkan dengan titik koma (; ). Jika beberapa file yang diimpor menentukan InitialTargets , semua target yang disebutkan akan dijalankan, sesuai urutan ditemukannya impor tersebut. |
Sdk |
Atribut opsional. Nama SDK dan versi opsional akan digunakan untuk membuat pernyataan Impor implisit yang ditambahkan ke file .proj. Jika tidak ada versi yang ditentukan, MSBuild akan mencoba menyelesaikan versi default. Misalnya, <Project Sdk="Microsoft.NET.Sdk" /> atau <Project Sdk="My.Custom.Sdk/1.0.0" /> . |
ToolsVersion |
Atribut opsional. Versi Toolset MSBuild akan digunakan untuk menentukan nilai untuk $(MSBuildBinPath) dan $(MSBuildToolsPath). |
TreatAsLocalProperty |
Atribut opsional. Nama properti yang tidak akan dianggap global. Atribut ini mencegah properti baris perintah tertentu agar tidak mengambil alih nilai properti yang diatur dalam file proyek atau target dan semua impor berikutnya. Beberapa properti dipisahkan dengan titik koma (;). Biasanya, properti global mengambil alih nilai properti yang ditetapkan dalam file proyek atau target. Jika properti tercantum dalam nilai TreatAsLocalProperty , nilai properti global tidak menimpa nilai properti yang diatur dalam file tersebut dan impor berikutnya. Untuk informasi selengkapnya, lihat Cara: Membuat file sumber yang sama dengan opsi yang berbeda. Catatan: Atur properti global pada prompt perintah dengan menggunakan sakelar -property (atau -p). Anda juga dapat mengatur atau memodifikasi properti global untuk proyek turunan dalam build multi-proyek dengan menggunakan atribut Properties pada tugas MSBuild. Untuk informasi selengkapnya, lihat Tugas MSBuild. |
xmlns |
Atribut opsional. Ketika ditentukan, atribut xmlns harus memiliki nilai http://schemas.microsoft.com/developer/msbuild/2003 . |
Elemen anak
Elemen | Deskripsi |
---|---|
Pilih | Elemen opsional. Mengevaluasi elemen turunan untuk memilih salah satu set elemen ItemGroup dan/atau elemen PropertyGroup untuk dievaluasi. |
Impor | Elemen opsional. Mengaktifkan file proyek untuk mengimpor file proyek lain. Dalam suatu proyek, mungkin terdapat beberapa elemen Import atau tidak ada sama sekali. |
ImportGroup | Elemen opsional. Berisi kumpulan Import elemen yang dikelompokkan di bawah kondisi opsional. |
ItemGroup | Elemen opsional. Elemen pengelompokan untuk item individual. Item ditentukan dengan menggunakan elemen Item. Dalam suatu proyek, mungkin terdapat beberapa elemen ItemGroup atau tidak ada sama sekali. |
ItemDefinitionGroup | Elemen opsional. Memungkinkan Anda menentukan sekumpulan Definisi Item, yaitu nilai metadata yang diterapkan ke semua item dalam proyek secara default. ItemDefinitionGroup menggantikan kebutuhan untuk menggunakan tugas CreateItem dan tugas CreateProperty . |
ProjectExtensions | Elemen opsional. Menyediakan cara untuk mempertahankan informasi non-MSBuild dalam file proyek MSBuild. Dalam suatu proyek, mungkin terdapat satu elemen ProjectExtensions atau tidak ada sama sekali. |
PropertyGroup | Elemen opsional. Elemen pengelompokan untuk properti individu. Properti ditentukan dengan menggunakan elemen Properti. Dalam suatu proyek, mungkin terdapat beberapa elemen PropertyGroup atau tidak ada sama sekali. |
Sdk | Elemen opsional. Mereferensikan SDK proyek MSBuild. Elemen ini dapat digunakan sebagai alternatif untuk atribut Sdk. |
Target | Elemen opsional. Berisi sekumpulan tugas untuk MSBuild guna dijalankan secara berurutan. Tugas ditentukan dengan menggunakan elemen Tugas. Dalam suatu proyek, mungkin terdapat beberapa elemen Target atau tidak ada sama sekali. |
UsingTask | Elemen opsional. Menyediakan cara untuk mendaftarkan tugas di MSBuild. Dalam suatu proyek, mungkin terdapat beberapa elemen UsingTask atau tidak ada sama sekali. |
Elemen induk
Tidak ada.