JavaScript 프로젝트 시스템에 대한 MSBuild 참조
이 문서에서는 .esproj 형식을 사용하는 JSPS(JavaScript Project System)를 기반으로 프로젝트를 구성하는 데 사용할 수 있는 MSBuild 속성 및 항목에 대한 참조 정보를 제공합니다.
ShouldRun 속성
다음 MSBuild 속성은 이 섹션에 설명되어 있습니다.
ShouldRunNpmInstall
ShouldRunNpmInstall
속성은 빌드 및 복원 명령에서 npm install
실행할지 여부를 지정합니다. 설정되지 않은 경우 속성의 기본값은 true
.
<PropertyGroup>
<ShouldRunNpmInstall>false</ShouldRunNpmInstall>
</PropertyGroup>
npm install
실행하지 않는 것이 바람직한 두 가지 일반적인 시나리오는 다음과 같습니다.
- npm이 아닌 패키지 관리자(예: yarn 또는 pnpm)를 사용하는 경우 이 시나리오에서 가장 좋은 해결 방법은
BeforeRestore
전에 실행되는 대상을 만들어 설치를 수동으로 실행하는 것입니다. - 개별 설치 실행을 불필요하게 만드는 글로벌 패키지 설치 메커니즘이 솔루션에 있는 경우
ShouldRunBuildScript
ShouldRunBuildScript
속성은 빌드 명령에서 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
- StartupCommand
- TestCommand
- CleanCommand
- PublishCommand
BuildCommand
BuildCommand
속성은 build
대상에 대한 동작을 지정합니다. 연결된 package.jsonbuild
또는 compile
스크립트를 포함하는 경우 기본 BuildCommand
값은 이미 실행되도록 설정되어 있습니다.
명령을 수정하려면 npm
사용할 때 npm run
포함합니다.
<PropertyGroup>
<BuildCommand>npm run build</BuildCommand>
</PropertyGroup>
StartupCommand
StartupCommand
속성은 dotnet run
대상에 대한 동작을 지정합니다. 연결된 package.json
start
, server
또는 dev
스크립트를 포함하는 경우 기본 StartupCommand
값이 이미 이러한 스크립트를 실행하도록 설정되어 있습니다.
명령을 수정하는 경우 npm
사용할 때 npm run
포함합니다.
<PropertyGroup>
<StartupCommand>npm run serve</StartupCommand>
</PropertyGroup>
TestCommand
TestCommand
속성은 test
대상에 대한 동작을 지정합니다. 연결된 package.json
test
스크립트를 포함하는 경우 이 스크립트를 실행하도록 기본 TestCommand
값이 이미 설정되어 있습니다.
명령을 수정하는 경우 npm
사용할 때 npm run
포함합니다.
<PropertyGroup>
<TestCommand>ng test</TestCommand>
</PropertyGroup>
CleanCommand
CleanCommand
속성은 clean
대상에 대한 동작을 지정합니다. 연결된 package.json
clean
스크립트를 포함하는 경우 이 스크립트를 실행하도록 기본 CleanCommand
값이 이미 설정되어 있습니다.
명령을 수정하는 경우 npm
사용할 때 npm run
포함합니다.
<PropertyGroup>
<CleanCommand>npm run clean</CleanCommand>
</PropertyGroup>
PublishCommand
PublishCommand
속성은 publish
대상에 대한 동작을 지정합니다. 연결된 package.json
publish
스크립트를 포함하는 경우 이 스크립트를 실행하도록 기본 PublishCommand
값이 이미 설정되어 있습니다. npm에서는 게시 전 및 사후 스크립트도 실행되는 것이 일반적입니다.
명령을 수정하는 경우 npm
사용할 때 npm run
포함합니다.
<PropertyGroup>
<PublishCommand>npm run publish</PublishCommand>
</PropertyGroup>
참고 항목
- MSBuild 스키마 참조
- 일반적인 MSBuild 속성
- NuGet 팩 대한 MSBuild 속성
- NuGet 복원 대한 MSBuild 속성
- 빌드 사용자 지정