Dokumentacja programu MSBuild dla systemu projektu JavaScript
Ten artykuł zawiera informacje referencyjne dotyczące właściwości i elementów programu MSBuild, których można użyć do konfigurowania projektów na podstawie systemu JavaScript Project System (JSPS), które używają formatu esproj.
Nuta
Właściwości opisane w tym artykule rozszerzają właściwości programu MSBuild domyślnie. Aby uzyskać listę typowych właściwości programu MSBuild, zobacz common MSBuild properties.
Właściwości ShouldRun
Następujące właściwości programu MSBuild są udokumentowane w tej sekcji:
- ShouldRunNpmInstall
- ShouldRunBuildScript
ShouldRunNpmInstall
Właściwość ShouldRunNpmInstall
określa, czy uruchamiać npm install
w poleceniach kompilacji i przywracania. Wartość domyślna właściwości jest true
, jeśli nie jest ustawiona.
<PropertyGroup>
<ShouldRunNpmInstall>false</ShouldRunNpmInstall>
</PropertyGroup>
Dwa typowe scenariusze, w których nie uruchomiono npm install
są pożądane:
- Gdy używany jest menedżer pakietów innych niż npm (np. yarn lub pnpm). W tym scenariuszu najlepszym rozwiązaniem jest utworzenie obiektu docelowego uruchamianego przed
BeforeRestore
w celu ręcznego uruchomienia instalacji. - Gdy w rozwiązaniu istnieje mechanizm instalacji pakietu globalnego, który sprawia, że uruchamianie poszczególnych instalacji jest niepotrzebne.
ShouldRunBuildScript
Właściwość ShouldRunBuildScript
określa, czy uruchamiać npm run build
w poleceniach kompilacji. Wartość domyślna właściwości jest true
, jeśli nie jest ustawiona.
<PropertyGroup>
<ShouldRunBuildScript>false</ShouldRunBuildScript>
</PropertyGroup>
W przypadku projektów zawierających tylko język JavaScript, który nie wymaga kompilowania, ustaw tę właściwość na wartość false
. Nowo utworzone projekty React, Vue i Angular zwykle należą do tej kategorii. W tym scenariuszu kompilacja jest używana do środowiska produkcyjnego, a nie do debugowania. Należy pamiętać, że polecenia Build
i Publish
są oddzielne w projektach JSPS, a Publish
nadal działa, nawet jeśli ta właściwość jest ustawiona.
Właściwości polecenia
Właściwości polecenia to właściwości przeznaczone do mapowania typowych skryptów package.json na obiekty docelowe programu MSBuild. Wartości domyślne są obsługiwane dla wszystkich tych właściwości, zgodnie z opisem w tej sekcji.
Ustaw te właściwości podczas korzystania z menedżerów pakietów innych niż npm lub aparatów skryptów, takich jak gulp
.
Następujące właściwości programu MSBuild zostały opisane w tej sekcji:
Kompilujpolecenia
Właściwość BuildCommand
określa zachowanie obiektu docelowego build
. Jeśli skojarzony package.json zawiera skrypt build
lub compile
, domyślna wartość BuildCommand
jest już ustawiona, aby je uruchomić.
Aby zmodyfikować polecenie, uwzględnij npm run
podczas korzystania z npm
.
<PropertyGroup>
<BuildCommand>npm run build</BuildCommand>
</PropertyGroup>
StartupCommand
Właściwość StartupCommand
określa zachowanie obiektu docelowego dotnet run
. Jeśli skojarzony package.json
zawiera skrypt start
, server
lub dev
, domyślna wartość StartupCommand
jest już ustawiona na uruchomienie tych skryptów.
Jeśli zmodyfikujesz polecenie, uwzględnij npm run
podczas korzystania z npm
.
<PropertyGroup>
<StartupCommand>npm run serve</StartupCommand>
</PropertyGroup>
Polecenie testowe
Właściwość TestCommand
określa zachowanie obiektu docelowego test
. Jeśli skojarzony package.json
zawiera skrypt test
, domyślna wartość TestCommand
jest już ustawiona na uruchomienie tego skryptu.
Jeśli zmodyfikujesz polecenie, uwzględnij npm run
podczas korzystania z npm
.
<PropertyGroup>
<TestCommand>ng test</TestCommand>
</PropertyGroup>
CleanCommand
Właściwość CleanCommand
określa zachowanie obiektu docelowego clean
. Jeśli skojarzony package.json
zawiera skrypt clean
, domyślna wartość CleanCommand
jest już ustawiona na uruchomienie tego skryptu.
Jeśli zmodyfikujesz polecenie, uwzględnij npm run
podczas korzystania z npm
.
<PropertyGroup>
<CleanCommand>npm run clean</CleanCommand>
</PropertyGroup>
Publikujpolecenia
Właściwość PublishCommand
określa zachowanie obiektu docelowego publish
. Jeśli skojarzony package.json
zawiera skrypt publish
, domyślna wartość PublishCommand
jest już ustawiona na uruchomienie tego skryptu. W narzędziu npm często używane są skrypty wstępne i po opublikowaniu, które również będą uruchamiane.
Jeśli zmodyfikujesz polecenie, uwzględnij npm run
podczas korzystania z npm
.
<PropertyGroup>
<PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>