Aracılığıyla paylaş


JavaScript Proje Sistemi için MSBuild başvurusu

Bu makalede, .esproj biçimini kullanan JavaScript Proje Sistemi(JSPS) temelinde projeleri yapılandırmak için kullanabileceğiniz MSBuild özellikleri ve öğeleri için başvuru bilgileri sağlanır.

Not

Bu makalede açıklanan özellikler, MSBuild'in varsayılan olarak sağladığı özellikleri genişletir. Yaygın MSBuild özelliklerinin listesi için bkz. Common MSBuild özellikleri.

ShouldRun özellikleri

Aşağıdaki MSBuild özellikleri bu bölümde belgelenmiştir:

ShouldRunNpmInstall

ShouldRunNpmInstall özelliği, Derleme ve Geri Yükleme komutlarında npm install çalıştırılıp çalıştırılmayacağını belirtir. Özelliğin varsayılan değeri ayarlanmamışsa true.

<PropertyGroup>
  <ShouldRunNpmInstall>false</ShouldRunNpmInstall>
</PropertyGroup>

npm install çalıştırılmaması istenen iki yaygın senaryo şunlardır:

  1. Npm olmayan bir paket yöneticisi (yarn veya pnpm gibi) kullanıldığında. Bu senaryoda en iyi çözüm, yüklemeyi el ile çalıştırmak için BeforeRestore önce çalışan bir hedef oluşturmaktır.
  2. Çözümde tek tek yüklemelerin çalıştırılmasını gereksiz hale getiren genel bir paket yükleme mekanizması mevcut olduğunda.

ShouldRunBuildScript

ShouldRunBuildScript özelliği, Derleme komutlarında npm run build çalıştırılıp çalıştırılmayacağını belirtir. Özelliğin varsayılan değeri ayarlanmamışsa true.

<PropertyGroup>
  <ShouldRunBuildScript>false</ShouldRunBuildScript>
</PropertyGroup>

Yalnızca JavaScript içeren ve oluşturulması gerekmeyen projeler için bu özelliği falseolarak ayarlayın. Yeni oluşturulan React, Vue ve Angular projeleri genellikle bu kategoriye girer. Bu senaryoda derleme, hata ayıklama için değil üretim için kullanılır. JSPS projelerinde Build ve Publish komutlarının ayrı olduğunu ve bu özellik ayarlanmış olsa bile Publish hala çalıştığını unutmayın.

Komut Özellikleri

Komut özellikleri, yaygın package.json betiklerini MSBuild hedefleriyle eşlemeye yönelik özelliklerdir. Varsayılan değerler, bu bölümde açıklandığı gibi bu özelliklerin tümü için desteklenir.

npm dışındaki paket yöneticilerini veya gulpgibi betik altyapılarını kullanırken bu özellikleri ayarlayın.

Bu bölümde aşağıdaki MSBuild özellikleri açıklanmıştır:

  • BuildCommand
  • StartupCommand
  • TestCommand
  • CleanCommand
  • PublishCommand

BuildCommand

BuildCommand özelliği, build hedefinin davranışını belirtir. İlişkili package.json bir build veya compile betiği içeriyorsa, varsayılan BuildCommand değeri zaten bunları çalıştıracak şekilde ayarlanmıştır.

komutunu değiştirmek için npmkullanırken npm run ekleyin.

<PropertyGroup>
  <BuildCommand>npm run build</BuildCommand>
</PropertyGroup>

StartupCommand

StartupCommand özelliği, dotnet run hedefinin davranışını belirtir. İlişkili package.json bir start, serverveya dev betiği içeriyorsa, varsayılan StartupCommand değeri zaten bu betikleri çalıştıracak şekilde ayarlanmıştır.

Komutu değiştirirseniz, npmkullanırken npm run ekleyin.

<PropertyGroup>
  <StartupCommand>npm run serve</StartupCommand>
</PropertyGroup>

Test Komutu

TestCommand özelliği, test hedefinin davranışını belirtir. İlişkili package.json bir test betiği içeriyorsa, varsayılan TestCommand değeri zaten bu betiği çalıştıracak şekilde ayarlanmıştır.

Komutu değiştirirseniz, npmkullanırken npm run ekleyin.

<PropertyGroup>
  <TestCommand>ng test</TestCommand>
</PropertyGroup>

CleanCommand

CleanCommand özelliği, clean hedefinin davranışını belirtir. İlişkili package.json bir clean betiği içeriyorsa, varsayılan CleanCommand değeri zaten bu betiği çalıştıracak şekilde ayarlanmıştır.

Komutu değiştirirseniz, npmkullanırken npm run ekleyin.

<PropertyGroup>
  <CleanCommand>npm run clean</CleanCommand>
</PropertyGroup>

PublishCommand

PublishCommand özelliği, publish hedefinin davranışını belirtir. İlişkili package.json bir publish betiği içeriyorsa, varsayılan PublishCommand değeri zaten bu betiği çalıştıracak şekilde ayarlanmıştır. npm'de, yayımlama öncesi ve sonrası betikleri de çalışır.

Komutu değiştirirseniz, npmkullanırken npm run ekleyin.

<PropertyGroup>
  <PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>

Ayrıca bkz.