Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Saat Anda membuat proyek, sering kali perlu mengatur opsi build menggunakan informasi yang tidak ada dalam file proyek atau file yang terdiri dari proyek Anda. Informasi ini biasanya disimpan dalam variabel lingkungan.
Nota
MSBuild memperlakukan variabel lingkungan sebagai input tepercaya. Mereka dapat menyebabkan MSBuild memuat logika build seperti tugas, .targets, atau .props file dari lokasi kustom atau mengubah cara build dijalankan.
Variabel lingkungan referensi
Semua variabel lingkungan yang merupakan nama properti MSBuild yang valid tersedia untuk file proyek MSBuild sebagai properti. Nama properti yang valid dijelaskan dalam properti MSBuild. Misalnya, variabel lingkungan yang dimulai dengan angka tidak tersedia di MSBuild.
Nota
Jika file proyek berisi definisi eksplisit properti yang memiliki nama yang sama dengan variabel lingkungan, properti dalam file proyek akan mengambil alih nilai variabel lingkungan.
Untuk menggunakan variabel lingkungan dalam proyek MSBuild
Referensikan variabel lingkungan dengan cara yang sama seperti variabel yang dideklarasikan dalam file proyek Anda. Misalnya, kode berikut mereferensikan variabel lingkungan BIN_PATH:
<FinalOutput>$(BIN_PATH)\MyAssembly.dll</FinalOutput>Anda dapat menggunakan
Conditionatribut untuk memberikan nilai default untuk properti jika variabel lingkungan tidak diatur.
Untuk memberikan nilai default untuk properti
ConditionGunakan atribut pada properti untuk mengatur nilai hanya jika properti tidak memiliki nilai. Misalnya, kode berikut mengaturToolsPathproperti ke c:\tools hanya jikaToolsPathvariabel lingkungan tidak diatur:<ToolsPath Condition="'$(TOOLSPATH)' == ''">c:\tools</ToolsPath>Nota
Nama properti tidak peka huruf besar/kecil sehingga dan
$(ToolsPath)$(TOOLSPATH)mereferensikan properti atau variabel lingkungan yang sama.
Contoh
File proyek berikut menggunakan variabel lingkungan untuk menentukan lokasi direktori.
<Project DefaultTargets="FakeBuild">
<PropertyGroup>
<FinalOutput>$(BIN_PATH)\myassembly.dll</FinalOutput>
<ToolsPath Condition=" '$(ToolsPath)' == '' ">
C:\Tools
</ToolsPath>
</PropertyGroup>
<Target Name="FakeBuild">
<Message Text="Building $(FinalOutput) using the tools at $(ToolsPath)..."/>
</Target>
</Project>