MSBuild .targets dosyaları

MSBuild, yaygın senaryolar için öğeler, özellikler, hedefler ve görevler içeren birkaç .targets dosya içerir. Bu dosyalar, bakım ve okunabilirliği basitleştirmek için çoğu Visual Studio proje dosyasında otomatik olarak içeri aktarılır.

SDK stilindeki projeler (gibi <Project Sdk="Microsoft.NET.Sdk">bir şeye sahip projeler), dosyaları SDK'ya başvurmamış projelere göre farklı şekilde içeri aktarır .targets . SDK stilindeki projelerde, içeri aktarılan .targets dosyayı proje dosyasında görmezsiniz çünkü bu içeri aktarma işlemleri başvurduğunuz SDK tarafından yönetilir. Ancak, SDK stilindeki projeler, dosyanın ana gövdesinden önce ve sonra standart içeri aktarmaları olan SDK stili olmayan projelerle eşdeğerdir, bu nedenle standart .targets dosyaların bu projelerde içeri aktarıldığını söylemek yine de doğrudur.

.NET SDK hedefleri, örneğin C:\Program Files\dotnet\sdk\{version}\Sdks\Microsoft.NET.Sdk\targets\ Windows üzerinde adresinde Microsoft.NET.Sdk .NET SDK ile birlikte yüklenir. SDK'ların tam listesi ve içeri .targets aktardıkları dosya için bkz . .NET proje SDK'ları.

SDK belirtmeyen projeler genellikle derleme işlemlerini tanımlamak için bir veya daha fazla .targets dosyayı açıkça içeri aktarır. Örneğin, Visual Studio'nun önceki sürümleri tarafından oluşturulan C# projeleri Microsoft.Common.targets dosyasını içeri aktaran Microsoft.CSharp.targets dosyasını içeri aktarır. C# projesinin kendisi bu projeye özgü öğeleri ve özellikleri tanımlar, ancak C# projesi için standart derleme kuralları içeri aktarılan .targets dosyalarda tanımlanır.

değeri, $(MSBuildToolsPath) bu ortak .targets dosyaların yolunu belirtir. .NET projeleri için yol genellikle {Visual Studio installation folder}\MSBuild\Current\Bin\{architecture}şeklindedir.

Not

Kendi hedeflerinizi oluşturma hakkında bilgi için bkz . Hedefler. öğesini kullanarak Import başka bir proje dosyasına proje dosyası ekleme hakkında bilgi için bkz . Öğeyi içeri aktarma (MSBuild) ve Nasıl yapılır: Aynı hedefi birden çok proje dosyasında kullanma.

Ortak .targets dosyalar

.targets dosyası Açıklama
Targets Visual Basic ve C# projeleri için standart derleme sürecindeki adımları tanımlar.

Aşağıdaki deyimi içeren Microsoft.CSharp.targets ve Microsoft.VisualBasic.targets dosyaları tarafından içeri aktarıldı: <Import Project="Microsoft.Common.targets" />
Microsoft.CSharp.targets Visual C# projeleri için standart derleme sürecindeki adımları tanımlar.

Visual C# proje dosyaları (.csproj tarafından içeri aktarıldı).
Microsoft.VisualBasic.targets Visual Basic projeleri için standart derleme sürecindeki adımları tanımlar.

Visual Basic proje dosyaları (.vbproj) tarafından içeri aktarıldı.

Dosyaları açar ve görüntülerseniz, genellikle , veya çapraz hedefleme senaryoları için diğer .targets dosyaların Microsoft.{language}.CurrentVersion.targetsçevresinde oldukça ince sarmalayıcılar Microsoft.{language}.CrossTargeting.targetsolduğunu görürsünüz.

Directory.Build.targets

Directory.Build.targets , bir dizin altındaki projelere özelleştirmeler sağlayan kullanıcı tanımlı bir dosyadır. ImportDirectoryBuildTargets özelliği false olarak ayarlanmadığı sürece bu dosya Microsoft.Common.targets'tanotomatik olarak içeri aktarılır. Daha fazla bilgi için derlemenizi özelleştirin.

Ayrıca bkz.