Freigeben über


MSBuild-Referenz für das JavaScript-Projektsystem

Dieser Artikel enthält Referenzinformationen für die MSBuild-Eigenschaften und -Elemente, mit denen Sie Projekte basierend auf dem JavaScript Project System (JSPS) konfigurieren können, die das .esproj Format verwenden.

Anmerkung

Die in diesem Artikel beschriebenen Eigenschaften erweitern standardmäßig die Eigenschaften MSBuild. Eine Liste der allgemeinen MSBuild-Eigenschaften finden Sie unter Allgemeinen MSBuild-Eigenschaften.

ShouldRun-Eigenschaften

Die folgenden MSBuild-Eigenschaften sind in diesem Abschnitt dokumentiert:

ShouldRunNpmInstall

Die ShouldRunNpmInstall-Eigenschaft gibt an, ob npm install für Build- und Wiederherstellungsbefehle ausgeführt werden sollen. Der Standardwert für die Eigenschaft ist true, wenn dies nicht festgelegt ist.

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

Zwei häufige Szenarien, in denen keine npm install ausgeführt werden, sind wünschenswert:

  1. Wenn ein nicht npm-Paket-Manager (z. B. Yarn oder pnpm) verwendet wird. In diesem Szenario besteht die beste Lösung darin, ein Ziel zu erstellen, das vor BeforeRestore ausgeführt wird, um die Installation manuell auszuführen.
  2. Wenn in der Lösung ein globaler Paketinstallationsmechanismus vorhanden ist, der die Ausführung einzelner Installationen unnötig macht.

ShouldRunBuildScript

Die ShouldRunBuildScript-Eigenschaft gibt an, ob npm run build auf Buildbefehlen ausgeführt werden sollen. Der Standardwert für die Eigenschaft ist true, wenn dies nicht festgelegt ist.

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

Legen Sie für Projekte, die nur JavaScript enthalten, die kein Erstellen erfordern, diese Eigenschaft auf falsefest. Neu erstellte React-, Vue- und Angular-Projekte fallen in der Regel in diese Kategorie. In diesem Szenario wird build für die Produktion und nicht für das Debuggen verwendet. Beachten Sie, dass die Befehle Build und Publish in JSPS-Projekten getrennt sind und Publish auch dann weiterhin ausgeführt werden, wenn diese Eigenschaft festgelegt ist.

Befehlseigenschaften

Befehlseigenschaften sind Eigenschaften, die allgemeine package.json Skripts MSBuild-Zielen zuordnen sollen. Standardwerte werden für alle diese Eigenschaften unterstützt, wie in diesem Abschnitt beschrieben.

Legen Sie diese Eigenschaften fest, wenn Sie andere Paketmanager als npm oder Skriptmodule wie gulpverwenden.

Die folgenden MSBuild-Eigenschaften werden in diesem Abschnitt beschrieben:

BuildCommand

Die BuildCommand-Eigenschaft gibt das Verhalten für das build Ziel an. Wenn die zugeordnete package.json ein build- oder compile-Skript enthält, ist der Standardwert BuildCommand bereits festgelegt, um sie auszuführen.

Um den Befehl zu ändern, schließen Sie npm run ein, wenn Sie npmverwenden.

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

StartupCommand

Die StartupCommand-Eigenschaft gibt das Verhalten für das dotnet run Ziel an. Wenn die zugeordnete package.json ein start-, server- oder dev-Skript enthält, ist der Standardwert StartupCommand bereits so festgelegt, dass diese Skripts ausgeführt werden.

Wenn Sie den Befehl ändern, schließen Sie npm run ein, wenn Sie npmverwenden.

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

TestCommand

Die TestCommand-Eigenschaft gibt das Verhalten für das test Ziel an. Wenn das zugeordnete package.json ein test Skript enthält, ist der Standardwert TestCommand bereits festgelegt, um dieses Skript auszuführen.

Wenn Sie den Befehl ändern, schließen Sie npm run ein, wenn Sie npmverwenden.

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

CleanCommand

Die CleanCommand-Eigenschaft gibt das Verhalten für das clean Ziel an. Wenn das zugeordnete package.json ein clean Skript enthält, ist der Standardwert CleanCommand bereits festgelegt, um dieses Skript auszuführen.

Wenn Sie den Befehl ändern, schließen Sie npm run ein, wenn Sie npmverwenden.

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

PublishCommand

Die PublishCommand-Eigenschaft gibt das Verhalten für das publish Ziel an. Wenn das zugeordnete package.json ein publish Skript enthält, ist der Standardwert PublishCommand bereits festgelegt, um dieses Skript auszuführen. In npm ist es üblich, skripts vor und nach dem Veröffentlichen zu haben, die ebenfalls ausgeführt werden.

Wenn Sie den Befehl ändern, schließen Sie npm run ein, wenn Sie npmverwenden.

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

Siehe auch