次の方法で共有


JavaScript プロジェクト システムの MSBuild リファレンス

この記事では、.esproj 形式を使用する JavaScript プロジェクト システム (JSPS) に基づいてプロジェクトを構成するために使用できる MSBuild プロパティと項目のリファレンス情報を提供します。

手記

この記事で説明するプロパティは、MSBuild が既定で提供するプロパティを拡張します。 一般的な MSBuild プロパティの一覧については、「の一般的な MSBuild プロパティ参照してください。

ShouldRun プロパティ

このセクションでは、次の MSBuild プロパティについて説明します。

  • ShouldRunNpmInstall する
  • ShouldRunBuildScript する

ShouldRunNpmInstall

ShouldRunNpmInstall プロパティは、Build コマンドと Restore コマンドで npm install を実行するかどうかを指定します。 プロパティの既定値は、設定されていない場合は true されます。

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

npm install を実行しないのが望ましい 2 つの一般的なシナリオは次のとおりです。

  1. npm 以外のパッケージ マネージャー (yarn や pnpm など) が使用されている場合。 このシナリオでは、インストールを手動で実行 BeforeRestore 前に実行されるターゲットを作成することをお勧めします。
  2. ソリューションにグローバル パッケージ インストール メカニズムが存在し、個々のインストールを実行する必要がない場合。

ShouldRunBuildScript

ShouldRunBuildScript プロパティは、Build コマンドで npm run build を実行するかどうかを指定します。 プロパティの既定値は、設定されていない場合は true されます。

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

ビルドを必要としない JavaScript のみを含むプロジェクトの場合は、このプロパティを falseに設定します。 新しく作成された React、Vue、Angular プロジェクトは、通常、このカテゴリに分類されます。 このシナリオでは、ビルドはデバッグではなく運用環境に使用されます。 Build コマンドと Publish コマンドは JSPS プロジェクトでは独立しており、このプロパティが設定されている場合でも Publish が実行されることに注意してください。

コマンドのプロパティ

コマンド プロパティは、一般的な package.json スクリプトを MSBuild ターゲットにマップすることを目的としたプロパティです。 このセクションで説明するように、これらのプロパティの既定値はすべてサポートされています。

npm 以外のパッケージ マネージャーや、gulpなどのスクリプト エンジンを使用する場合は、これらのプロパティを設定します。

このセクションでは、次の MSBuild プロパティについて説明します。

BuildCommand

BuildCommand プロパティは、build ターゲットの動作を指定します。 関連付けられている package.jsonbuild または compile スクリプトが含まれている場合、既定の BuildCommand 値は既に実行されるように設定されています。

コマンドを変更するには、npmを使用するときに npm run を含めます。

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

StartupCommand

StartupCommand プロパティは、dotnet run ターゲットの動作を指定します。 関連付けられている package.jsonstartserver、または dev スクリプトが含まれている場合、既定の StartupCommand 値は既にこれらのスクリプトを実行するように設定されています。

コマンドを変更する場合は、npmを使用するときに npm run を含めます。

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

TestCommand

TestCommand プロパティは、test ターゲットの動作を指定します。 関連付けられている package.jsontest スクリプトが含まれている場合、既定の TestCommand 値は既にこのスクリプトを実行するように設定されています。

コマンドを変更する場合は、npmを使用するときに npm run を含めます。

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

CleanCommand

CleanCommand プロパティは、clean ターゲットの動作を指定します。 関連付けられている package.jsonclean スクリプトが含まれている場合、既定の CleanCommand 値は既にこのスクリプトを実行するように設定されています。

コマンドを変更する場合は、npmを使用するときに npm run を含めます。

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

PublishCommand

PublishCommand プロパティは、publish ターゲットの動作を指定します。 関連付けられている package.jsonpublish スクリプトが含まれている場合、既定の PublishCommand 値は既にこのスクリプトを実行するように設定されています。 npm では、発行前と発行後のスクリプトも実行されるのが一般的です。

コマンドを変更する場合は、npmを使用するときに npm run を含めます。

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

関連項目