Özel Araç Takımı yapılandırması oluşturma
MSBuild araç takımı, uygulama projesi oluşturmak için kullanabileceğiniz görevlere, hedeflere ve araçlara başvurular içerir. MSBuild standart bir araç takımı içerir, ancak özel araç kümeleri de oluşturabilirsiniz.
Standart araç takımı yapılandırmaları
MSBuild, Visual Studio yükleme dizini altındaki MSBuild\Current\Bin klasörüne yüklenen geçerli MSBuild sürümüne başvuran standart araç takımını Current
içerir.
Özel araç takımı tanımları
Standart bir Araç Takımı derleme gereksinimlerinizi karşılamadığında, özel Toolset
bir oluşturabilirsiniz. Örneğin, C++ projeleri oluşturmak için ayrı bir sisteme sahip olmanız gereken bir derleme laboratuvarı senaryonuz olabilir. Özel Toolset
bir kullanarak, komut satırı anahtarını kullanarak MSBuild.exe dosyasını çalıştırdığınızda özniteliğine /toolsVersion
özel değerler ToolsVersion
atayabilirsiniz. Proje dosyasında özniteliğini ToolsVersion
belirtirseniz, yoksayılır.
Bunu yaparak, bu dizinden .targets dosyalarını içeri aktarmak ve bu Araç Takımını kullanan herhangi bir proje için kullanılabilecek kendi özel Araç Takımı özelliklerinizi tanımlamak için özelliğini de kullanabilirsiniz$(MSBuildToolsPath)
.
MSBuild.exe için yapılandırma dosyasında (veya msbuild altyapısını barındıran özel araç için kullanıyorsanız) özel bir Araç Kümesi belirtin. Örneğin, MsBuild.exe için yapılandırma dosyası, MyCustomToolset adlı bir araç takımı tanımlamak isterseniz aşağıdaki Toolset
tanımı içerebilir.
<msbuildToolsets default="MyCustomToolset">
<toolset toolsVersion="MyCustomToolset">
<property name="MSBuildToolsPath"
value="C:\SpecialPath" />
</toolset>
</msbuildToolsets>
<msbuildToolsets>
yapılandırma dosyasında da aşağıdaki gibi tanımlanmalıdır.
<configSections>
<section name="msbuildToolsets"
type="Microsoft.Build.BuildEngine.ToolsetConfigurationSection,
Microsoft.Build, Version=15.1.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a">
</section>
</configSections>
Dekont
Doğru <configSections>
okunabilmesi için bölümdeki ilk alt bölüm <configuration>
olması gerekir.
ToolsetConfigurationSection
, herhangi bir MSBuild konağı tarafından özel yapılandırma için kullanılabilen özel bir yapılandırma bölümüdür. Özel bir Araç Takımı kullanıyorsanız, yapılandırma dosyası girdilerini sağlamak dışında bir konağın derleme altyapısını başlatmak için herhangi bir işlem yapması gerekmez.
Aşağıdaki özellikler, projelerde kullanılan değerine ToolsVersion
özgüdür:
$(MSBuildBinPath), kayıt defterinde veya öğesinin tanımlandığı yapılandırma dosyasında belirtilen değere
ToolsVersion
ayarlanırToolsPath
.$(MSBuildToolsPath)
Kayıt defterindeki veya yapılandırma dosyasındaki ayar, çekirdek görevlerin ve hedeflerin konumunu belirtir. Proje dosyasında bu, $(MSBuildBinPath) özelliğine ve ayrıca $(MSBuildToolsPath) özelliğine eşler.$(MSBuildToolsPath)
, yapılandırma dosyasında belirtilen MSBuildToolsPath özelliği tarafından sağlanan ayrılmış bir özelliktir. (Bu özellik öğesinin yerini alır$(MSBuildBinPath)
. Ancak,$(MSBuildBinPath)
uyumluluk için ileriye taşınır.) Her ikisi de aynı değere sahip olmadığı sürece özel bir Araç Takımı her ikisini de$(MSBuildToolsPath)
tanımlamalı veya$(MSBuildBinPath)
tanımlamamalıdır.Ayrıca, MSBuildToolsPath özelliğini eklemek için kullandığınız söz dizimini kullanarak yapılandırma dosyasına Özel, ToolsVersion'a özgü özellikler de ekleyebilirsiniz. Bu özel özellikleri proje dosyasında kullanılabilir hale getirmek için yapılandırma dosyasında belirtilen değerin adıyla aynı adı kullanın. Araç Kümeleri tanımlayabilirsiniz, ancak yapılandırma dosyasında alt araç kümeleri tanımlanmaz.