Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
MSBuild Server, Windows, Linux veya Mac .NET Core derleme ortamlarında .NET CLI kullanarak dotnet build
komutu çağrıldığında gerçekleşen .NET Core derlemelerinin performansını artırır. Derleme her istenişinde derleme işlemini başlatmak yerine bağlamın büyük bölümü uzun süre çalışan bir işlemde önbelleğe alınır, böylece bir sonraki derleme tarafından yeniden kullanılabilir. MSBuild Sunucusu, Visual Studio derlemeleriyle ilgili değildir, çünkü Visual Studio MSBuild için bir konak işlevi görür ve gerekli tüm bağlamı zaten önbelleğe alır.
İşlem hatları genellikle her derleme için isteğe bağlı olarak bir derleme ortamı oluşturup derleme tamamlandığında bu ortamı attığından, MSBuild Sunucusu genellikle Azure Pipeline derlemeleri gibi CI senaryolarında yararlı olmaz.
MSBuild Sunucusunu Etkinleştirme
MSBuild sunucusu varsayılan olarak etkin değildir; etkinleştirmek için ortam değişkenini DOTNET_CLI_USE_MSBUILD_SERVER
veya 1
olarak true
ayarlayın.
Etkinleştirildikten sonra ilk kez yeni bir derleme işlemi başlatırsınız, derleme sunucusu başlatılır. İlk derlemeyi başlattığınızda, önbelleği etkinleştirir. İlk derleme tamamlandıktan sonra önbellek kalıcı hale geldi; bu nedenle ikinci derleme, önbelleğe alınan bilgiler nedeniyle başlangıç süresi önemli ölçüde azaldığından daha hızlı ilerler. Derleme tamamlandıktan sonra önbellek devam eder, ancak 15 dakikalık boşta kalma süresinden sonra kapatılır. Bu nedenle, birçok derlemenin ardı ardına talep edildiği yinelenen derleme senaryolarında öncelikle avantaj sağlar.
MSBuild Sunucusunu kapatma veya devre dışı bırakma
MSBuild sunucusunun kullanımını devre dışı bırakmanın birkaç farklı yolu vardır. Yalnızca çalışan sunucuyu kapatmak istiyorsanız, dotnet build-server shutdown
komutunu çalıştırabilirsiniz.
Bir makinedeki tüm derlemelerde özelliği devre dışı bırakmak için sistem ortam değişkenini DOTNET_CLI_USE_MSBUILD_SERVER
veya false
olarak 0
ayarlayabilirsiniz. Bu değişkeni launch.json
içinde VS Code gibi bir araçta proje bazında da ayarlayabilirsiniz.
Belirli bir komut satırı derlemesi çağrısında MSBuild Sunucusu'nu devre dışı bırakmak için /nr:false
seçeneğini (veya /node-reuse:false
) kullanabilirsiniz.
Özelliği tamamen devre dışı bırakmak için etkinleştiren değişiklik dalgasını geri çevirebilirsiniz; SET MSBuildDisableFeaturesFromVersion="17.4"
öğesini seçin. Bu, aynı değişim dalgasındaki diğer özellikleri devre dışı bıraktı. Değişiklik dalgaları hakkında daha fazla bilgi için bkz. MSBuild değişiklik dalgaları.
Derleme sunucusunun geçerli durumunu belirleme
Makinede işlem durumunu görüntüleyebilir ve MSBuild sunucu işlemlerini arayabilirsiniz. MSBuild sunucu işlemleri dotnet.exe
ile başlatılır ve MSBuild.dll yolunu ve komut seçeneği /nodemode:8
'i gösterir. Burada 8
MSBuild Sunucusu'nu gösterir (/nodemode:1
normal MSBuild çalışan düğümlerini gösterir).
Ayrıca bakınız
- dotnet build
- MSBuild