이 페이지에서는 Bazel의 주요 명령어를 간략하게 정리해봅니다.
Bazel 명령어 표
명령어 | 설명 |
build | 소스 코드를 빌드하여 실행 가능한 출력물을 생성합니다. |
test | 테스트를 실행하고 결과를 보고합니다. |
run | 빌드 후, 실행 가능한 타겟을 실행합니다. |
clean | 이전 빌드 결과물을 삭제합니다. |
info | Bazel 빌드 시스템에 대한 정보를 출력합니다. |
fetch | 외부 종속성을 가져옵니다. |
query | Bazel 빌드 시스템의 정보를 쿼리합니다. |
cquery | 구성된 타겟을 쿼리합니다. |
aquery | 액션 그래프를 쿼리합니다. |
coverage | 코드 커버리지 정보를 수집하고 출력합니다. |
mobile-install | 모바일 기기에 앱을 설치하고 실행합니다. |
help | 사용 가능한 Bazel 명령어에 대한 도움말을 출력합니다. |
Bazel 명령어 사용 예시
build
소스 코드를 빌드하여 실행 가능한 출력물을 생성합니다.
bazel build //my_project:my_target
Plain Text
복사
test
테스트를 실행하고 결과를 보고합니다.
bazel test //my_project:my_test_target
Plain Text
복사
run
빌드 후, 실행 가능한 타겟을 실행합니다.
bazel run //my_project:my_run_target
Plain Text
복사
clean
이전 빌드 결과물을 삭제합니다.
bazel clean
Plain Text
복사
info
Bazel 빌드 시스템에 대한 정보를 출력합니다.
bazel info
Plain Text
복사
fetch
외부 종속성을 가져옵니다.
bazel fetch //my_project:my_target
Plain Text
복사
query
Bazel 빌드 시스템의 정보를 쿼리합니다.
bazel query 'deps(//my_project:my_target)'
Plain Text
복사
cquery
구성된 타겟을 쿼리합니다.
bazel cquery 'deps(//my_project:my_target)'
Plain Text
복사
aquery
액션 그래프를 쿼리합니다.
bazel aquery 'deps(//my_project:my_target)'
Plain Text
복사
coverage
코드 커버리지 정보를 수집하고 출력합니다.
bazel coverage //my_project:my_test_target
Plain Text
복사
mobile-install
모바일 기기에 앱을 설치하고 실행합니다.
bazel mobile-install //my_project:my_mobile_app
Plain Text
복사
help
사용 가능한 Bazel 명령어에 대한 도움말을 출력합니다.
bazel help
Plain Text
복사
이 문서에서는 Bazel 빌드 툴의 주요 명령어들에 대한 간략한 설명과 예시를 제공하였습니다. Bazel의 공식 문서를 참고하여 추가적인 정보와 세부 설정 방법을 확인할 수 있습니다. 공식 문서 링크: https://bazel.build/
Bazel 고급 사용법
와일드카드 사용
와일드카드를 사용하여 여러 타겟을 한 번에 빌드하거나 테스트할 수 있습니다.
bazel build //my_project/...
Plain Text
복사
빌드 옵션 설정
빌드 옵션을 설정하여 빌드 프로세스를 커스터마이징할 수 있습니다.
bazel build //my_project:my_target --copt="-O3" --strip=always
Plain Text
복사
병렬 빌드 및 테스트
Bazel은 기본적으로 병렬 빌드 및 테스트를 수행합니다. 병렬 수행을 조절하려면 --jobs 옵션을 사용합니다.
bazel build //my_project:my_target --jobs=4
Plain Text
복사
캐시 사용
Bazel은 로컬 및 원격 캐시를 지원하여 빌드 시간을 단축할 수 있습니다.
bazel build //my_project:my_target --remote_cache=http://my-cache-server:8080
Plain Text
복사
프로파일링
빌드 및 테스트 프로세스의 성능 분석을 위해 프로파일링을 수행할 수 있습니다.
bazel build //my_project:my_target --profile=my_profile.json
Plain Text
복사
빌드 결과물 추적
빌드 결과물의 위치를 확인하려면 --output_groups 옵션을 사용합니다.
bazel build //my_project:my_target --output_groups=+my_output_group
Plain Text
복사
로컬 실행 모드
Bazel은 로컬 머신에서의 실행을 지원하며, 이를 통해 리소스 사용량을 줄일 수 있습니다.
bazel build //my_project:my_target --local_resources=2048,.5,1.0
Plain Text
복사
이 외에도 Bazel은 다양한 기능을 제공하므로, 공식 문서를 참조하여 자세한 내용과 사용법을 확인할 수 있습니다. 공식 문서를 통해 Bazel의 빌드 규칙, 툴체인, 테스트 환경 구성 등의 세부 사항을 학습할 수 있습니다.