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:
- 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. - 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 false
fest. 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 gulp
verwenden.
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 npm
verwenden.
<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 npm
verwenden.
<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 npm
verwenden.
<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 npm
verwenden.
<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 npm
verwenden.
<PropertyGroup>
<PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>