Bagikan melalui


Referensi MSBuild untuk Sistem Proyek JavaScript

Artikel ini menyediakan informasi referensi untuk properti dan item MSBuild yang dapat Anda gunakan untuk mengonfigurasi proyek berdasarkan JavaScript Project System (JSPS), yang menggunakan format .esproj.

Nota

Properti yang dijelaskan dalam artikel ini memperluas properti yang disediakan MSBuild secara default. Untuk daftar properti MSBuild umum, lihat properti Common MSBuild.

Properti ShouldRun

Properti MSBuild berikut ini didokumenkan di bagian ini:

  • ShouldRunNpmInstall
  • ShouldRunBuildScript

ShouldRunNpmInstall

Properti ShouldRunNpmInstall menentukan apakah akan menjalankan atau tidak menjalankan npm install pada perintah Build dan Restore. Nilai default untuk properti adalah true jika tidak diatur.

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

Dua skenario umum di mana tidak berjalan npm install diinginkan adalah:

  1. Ketika manajer paket non-npm (seperti yarn atau pnpm) digunakan. Dalam skenario ini, solusi terbaik adalah membuat target yang berjalan sebelum BeforeRestore untuk menjalankan penginstalan secara manual.
  2. Ketika mekanisme penginstalan paket global ada dalam solusi yang membuat penginstalan individual berjalan tidak perlu.

ShouldRunBuildScript

Properti ShouldRunBuildScript menentukan apakah akan menjalankan npm run build pada perintah Build atau tidak. Nilai default untuk properti adalah true jika tidak diatur.

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

Untuk proyek yang hanya berisi JavaScript yang tidak memerlukan pembuatan, atur properti ini ke false. Proyek React, Vue, dan Angular yang baru dibuat biasanya termasuk dalam kategori ini. Dalam skenario ini, build digunakan untuk produksi dan bukan untuk penelusuran kesalahan. Perhatikan bahwa perintah Build dan Publish terpisah dalam proyek JSPS, dan Publish masih berjalan meskipun properti ini diatur.

Properti Perintah

Properti perintah adalah properti yang dimaksudkan untuk memetakan skrip package.json umum ke target MSBuild. Nilai default didukung untuk semua properti ini, seperti yang dijelaskan di bagian ini.

Atur properti ini saat menggunakan manajer paket selain npm, atau mesin pembuatan skrip seperti gulp.

Properti MSBuild berikut ini dijelaskan di bagian ini:

BuildCommand

Properti BuildCommand menentukan perilaku untuk target build. Jika package.json terkait berisi skrip build atau compile, nilai BuildCommand default sudah diatur untuk menjalankannya.

Untuk mengubah perintah, sertakan npm run saat menggunakan npm.

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

StartupCommand

Properti StartupCommand menentukan perilaku untuk target dotnet run. Jika package.json terkait berisi skrip start, server, atau dev, nilai StartupCommand default sudah diatur untuk menjalankan skrip ini.

Jika Anda mengubah perintah, sertakan npm run saat menggunakan npm.

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

TestCommand

Properti TestCommand menentukan perilaku untuk target test. Jika package.json terkait berisi skrip test, nilai TestCommand default sudah diatur untuk menjalankan skrip ini.

Jika Anda mengubah perintah, sertakan npm run saat menggunakan npm.

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

CleanCommand

Properti CleanCommand menentukan perilaku untuk target clean. Jika package.json terkait berisi skrip clean, nilai CleanCommand default sudah diatur untuk menjalankan skrip ini.

Jika Anda mengubah perintah, sertakan npm run saat menggunakan npm.

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

PublishCommand

Properti PublishCommand menentukan perilaku untuk target publish. Jika package.json terkait berisi skrip publish, nilai PublishCommand default sudah diatur untuk menjalankan skrip ini. Dalam npm, adalah umum untuk memiliki skrip pra-dan pasca-penerbitan, yang juga akan berjalan.

Jika Anda mengubah perintah, sertakan npm run saat menggunakan npm.

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

Lihat juga