CLI

build

Command
ng build [project] [options]
ng b [project] [options]

이 명령은 "application" 또는 "library" 유형의 프로젝트를 빌드하는 데 사용할 수 있습니다. 라이브러리를 빌드할 때는 다른 빌더가 호출되며 ts-config, configuration, poll, watch 옵션만 적용됩니다. 나머지 옵션은 모두 애플리케이션 빌드에만 적용됩니다.

애플리케이션 빌더는 esbuild 빌드 도구를 사용하며, 작업 공간 설정 파일(angular.json)에 지정한 기본 설정 옵션이나 이름이 있는 대체 설정을 사용합니다. CLI로 프로젝트를 생성하면 "development" 설정이 기본으로 생성되며, --configuration development를 지정하면 이 설정을 사용할 수 있습니다.

설정 옵션은 일반적으로 명령 옵션에 대응합니다. 명령줄에서 해당 옵션을 지정하면 개별 설정의 기본값을 덮어쓸 수 있습니다. 명령에서는 dash-case로 작성한 옵션 이름을 사용할 수 있습니다. 설정 파일에서는 이름을 camelCase로 지정해야 합니다.

일부 추가 옵션은 설정 파일을 직접 편집하거나 ng config 명령을 사용해서만 설정할 수 있습니다. 여기에는 프로젝트에 포함할 런타임 전역 리소스를 제공하는 assets, styles, scripts 객체가 포함됩니다. 이미지와 폰트 같은 CSS 리소스는 브라우저 출력의 media 디렉터리(outputPath.media 옵션으로 설정 가능)에 자동으로 기록되며, outputHashing이 all 또는 media이면 지문이 추가됩니다.

자세한 내용은 작업 공간 설정을 참고하세요.

인자

project

명령을 실행할 프로젝트 이름입니다. 애플리케이션이나 라이브러리일 수 있습니다.

값의 타입string

옵션

allowed-common-js-dependencies

빌드 시 경고 없이 사용할 수 있는 CommonJS 또는 AMD 패키지 목록입니다. 모두 허용하려면 '*'를 사용하세요.

값의 타입array
aot

사전(AOT) 컴파일로 빌드합니다.

값의 타입boolean기본값true
app-shell

빌드 시 앱 기본 구조를 생성합니다.

값의 타입boolean
base-href

빌드하는 애플리케이션의 기본 URL입니다.

값의 타입string
browser

현재 작업 공간을 기준으로 한 애플리케이션 브라우저 진입점의 전체 경로입니다.

값의 타입string
clear-screen

재빌드할 때 터미널 화면을 자동으로 지웁니다.

값의 타입boolean기본값false
conditions

조건부 exports/imports를 해석하는 데 사용하는 사용자 지정 패키지 해석 조건입니다. 기본값은 ['module', 'development'/'production']입니다. 요구사항을 충족하면 다음 특수 조건은 항상 포함됩니다: 'default', 'import', 'require', 'browser', 'node'.

값의 타입array
configuration
별칭c

angular.json의 "configurations" 섹션에 지정한 빌더 설정 이름을 쉼표로 구분한 목록입니다. 빌더는 지정한 대상 실행에 이 설정을 사용합니다. 자세한 내용은 https://angular.dev/reference/configs/workspace-config#alternate-build-configurations 를 참고하세요.

값의 타입string
cross-origin

CORS를 지원하는 엘리먼트의 crossorigin 어트리뷰트 설정을 정의합니다.

값의 타입string허용되는 값anonymous, none, use-credentials기본값none
define

라이브러리를 포함한 JavaScript 또는 TypeScript 코드에서 발견되면 지정한 상수 값으로 바꿀 전역 식별자를 정의합니다. 값은 그대로 사용됩니다. 문자열 값은 따옴표로 감싸야 합니다. Component 데코레이터 같은 Angular 메타데이터 안의 식별자는 바뀌지 않습니다.

값의 타입array
delete-output-path

빌드하기 전에 출력 경로를 삭제합니다.

값의 타입boolean기본값true
deploy-url

'index.html'과 컴포넌트 스타일시트에서 사용하는 리소스 URL의 기본 경로를 지정합니다. 이 옵션은 Angular Elements를 사용하거나 CDN 위치를 다르게 사용하는 등 특정 배포 상황에서만 필요합니다.

값의 타입string
external-dependencies

목록에 지정한 외부 의존성을 번들에 포함하지 않습니다. 대신 생성된 번들은 런타임에 해당 의존성을 사용할 수 있어야 합니다. 참고: @foo/bar는 @foo/bar/baz 같은 하위 경로를 포함해 @foo/bar 패키지의 모든 경로를 외부 의존성으로 표시합니다.

값의 타입array
extract-licenses

모든 라이선스를 별도 파일로 추출합니다.

값의 타입boolean기본값true
help

이 명령의 도움말을 콘솔에 표시합니다.

값의 타입boolean
i18n-duplicate-translation

다국어 번역이 중복될 때 처리하는 방법입니다.

값의 타입string허용되는 값error, ignore, warning기본값warning
i18n-missing-translation

다국어 번역이 없을 때 처리하는 방법입니다.

값의 타입string허용되는 값error, ignore, warning기본값warning
index

애플리케이션 HTML 인덱스 생성을 설정합니다.

값의 타입string
inline-style-language

애플리케이션의 인라인 컴포넌트 스타일에 사용할 스타일시트 언어입니다.

값의 타입string허용되는 값css, less, sass, scss기본값css
localize

번들을 하나 이상의 지역으로 번역합니다.

값의 타입boolean
named-chunks

지연 로딩 청크에 파일 이름을 사용합니다.

값의 타입boolean기본값false
optimization

빌드 출력 최적화를 활성화합니다. 스크립트와 스타일 최소화, 트리 셰이킹, 사용하지 않는 코드 제거, 주요 CSS와 폰트의 인라인 포함 등이 적용됩니다. 자세한 내용은 https://angular.dev/reference/configs/workspace-config#optimization-configuration 을 참고하세요.

값의 타입boolean기본값true
output-hashing

출력 파일 이름에서 캐시 무효화를 위해 사용할 해싱 모드를 정의합니다.

  • none: 해싱하지 않습니다.
  • all: 모든 출력 번들에 해시를 적용합니다.
  • media: 모든 출력 미디어(예: CSS 파일에서 참조하는 이미지, 폰트 등)에 해시를 적용합니다.
  • bundles: 지연 로딩 번들과 메인 번들의 출력에 해시를 적용합니다.
값의 타입string허용되는 값all, bundles, media, none기본값none
output-mode

빌드 출력 결과물의 유형을 정의합니다. 'static': 모든 정적 호스팅 서비스에 배포할 수 있는 정적 사이트 빌드 결과물을 생성합니다. 'server': 하이브리드 렌더링이나 API를 사용하는 애플리케이션에 필요한 서버 애플리케이션 빌드 결과물을 생성합니다.

값의 타입string허용되는 값server, static
output-path

작업 공간 루트를 기준으로 출력 경로를 지정합니다.

값의 타입string
poll

파일 감시 폴링을 활성화하고 주기를 밀리초 단위로 지정합니다.

값의 타입number
polyfills

빌드에 포함할 폴리필 목록입니다. 현재 작업 공간을 기준으로 한 파일의 전체 경로나 모듈 지정자를 사용할 수 있습니다. 예: 'zone.js'.

값의 타입array
prerender

빌드 시 애플리케이션 페이지를 사전 렌더링(SSG)합니다.

값의 타입boolean
preserve-symlinks

모듈을 해석할 때 실제 경로를 사용하지 않습니다. 값을 지정하지 않으면 NodeJS의 --preserve-symlinks 옵션이 설정된 경우 기본값은 true입니다.

값의 타입boolean
progress

빌드 중 진행 상황을 콘솔에 기록합니다.

값의 타입boolean기본값true
scripts

빌드에 포함할 전역 스크립트입니다.

값의 타입array
server

현재 작업 공간을 기준으로 한 애플리케이션 서버 진입점의 전체 경로입니다.

값의 타입string
service-worker

서비스 워커 설정을 생성합니다.

값의 타입string
source-map

스크립트와 스타일의 소스 맵을 출력합니다. 자세한 내용은 https://angular.dev/reference/configs/workspace-config#source-map-configuration 을 참고하세요.

값의 타입boolean기본값false
ssr

런타임에 애플리케이션 페이지를 서버 사이드 렌더링(SSR)합니다.

값의 타입boolean기본값false
stats-json

https://esbuild.github.io/analyze/ 에서 분석할 수 있는 'browser-stats.json' 파일을 생성합니다. 서버 사이드 렌더링을 활성화하면 'server-stats.json' 파일도 생성합니다.

값의 타입boolean기본값false
styles

빌드에 포함할 전역 스타일입니다.

값의 타입array
subresource-integrity

하위 리소스 무결성 검증을 활성화합니다.

값의 타입boolean기본값false
ts-config

현재 작업 공간을 기준으로 한 TypeScript 설정 파일의 전체 경로입니다.

값의 타입string
verbose

출력 로그에 더 자세한 정보를 추가합니다.

값의 타입boolean기본값false
watch

파일이 변경되면 빌드합니다.

값의 타입boolean기본값false
web-worker-ts-config

웹 워커 모듈의 TypeScript 설정입니다.

값의 타입string
상세 내용으로 이동