bazel [<startup options>] <command> [<args>]
bazel [<startup options>] <command> [<args>] -- [<target patterns>]
Cú pháp của tuỳ chọn
Bạn có thể truyền các lựa chọn cho Bazel theo nhiều cách. Bạn có thể truyền các lựa chọn yêu cầu giá trị bằng dấu bằng hoặc dấu cách:
--<option>=<value> --<option> <value>
-<short_form> <value>
Bạn có thể bật các lựa chọn Boolean như sau:
--<option> --<option>=[true|yes|1]
--no<option> --<option>=[false|no|0]
Các lựa chọn có 3 trạng thái thường được đặt thành tự động theo mặc định và có thể được bật bắt buộc như sau:
--<option>=[true|yes|1]
--no<option> --<option>=[false|no|0]
Lệnh
analyze-profile |
Phân tích dữ liệu hồ sơ bản dựng. |
aquery |
Phân tích các mục tiêu đã cho và truy vấn biểu đồ hành động. |
build |
Tạo các mục tiêu được chỉ định. |
canonicalize-flags |
Chuẩn hoá danh sách các lựa chọn bazel. |
clean |
Xoá các tệp đầu ra và có thể dừng máy chủ. |
coverage |
Tạo báo cáo về mức độ phù hợp của mã cho các mục tiêu kiểm thử đã chỉ định. |
cquery |
Tải, phân tích và truy vấn các mục tiêu đã chỉ định bằng cấu hình. |
dump |
Kết xuất trạng thái nội bộ của quy trình máy chủ bazel. |
fetch |
Tìm nạp các kho lưu trữ bên ngoài là điều kiện tiên quyết cho các mục tiêu. |
help |
In thông tin trợ giúp cho các lệnh hoặc chỉ mục. |
info |
Hiển thị thông tin thời gian chạy về máy chủ bazel. |
license |
In giấy phép của phần mềm này. |
mobile-install |
Số lượt cài đặt nhắm đến thiết bị di động. |
mod |
Truy vấn biểu đồ phần phụ thuộc bên ngoài Bzlmod |
print_action |
In các đối số dòng lệnh để biên dịch một tệp. |
query |
Thực thi một truy vấn biểu đồ phần phụ thuộc. |
run |
Chạy mục tiêu đã chỉ định. |
shutdown |
Dừng máy chủ bazel. |
sync |
Đồng bộ hoá tất cả các kho lưu trữ được chỉ định trong tệp không gian làm việc |
test |
Tạo và chạy các mục tiêu kiểm thử đã chỉ định. |
vendor |
Tìm nạp các kho lưu trữ bên ngoài vào một thư mục do cờ --vendor_dir chỉ định. |
version |
In thông tin phiên bản cho bazel. |
Lựa chọn khởi động
- Các lựa chọn xuất hiện trước lệnh và được ứng dụng phân tích cú pháp:
--[no]autodetect_server_javabase
mặc định: "true"-
Khi --noautodetect_server_javabase được truyền, Bazel sẽ không quay lại JDK cục bộ để chạy máy chủ bazel mà thay vào đó sẽ thoát.
Thẻ:affects_outputs
,loses_incremental_state
--[no]batch
mặc định: "false"-
Nếu được đặt, Bazel sẽ chỉ chạy dưới dạng một quy trình ứng dụng mà không có máy chủ, thay vì ở chế độ ứng dụng/máy chủ tiêu chuẩn. Thao tác này không được dùng nữa và sẽ bị xoá. Vui lòng tắt máy chủ một cách rõ ràng nếu bạn muốn tránh các máy chủ còn tồn tại.
Thẻ:loses_incremental_state
,bazel_internal_configuration
,deprecated
--[no]batch_cpu_scheduling
mặc định: "false"-
Chỉ trên Linux; sử dụng chế độ lập lịch CPU "hàng loạt" cho Blaze. Chính sách này hữu ích cho những khối lượng công việc không tương tác nhưng không muốn giảm giá trị ưu tiên. Xem "man 2 sched_setscheduler". Nếu là false, Bazel sẽ không thực hiện lệnh gọi hệ thống.
Thẻ:host_machine_resource_optimizations
--bazelrc=<path>
mặc định: xem nội dung mô tả-
Vị trí của tệp .bazelrc của người dùng chứa các giá trị mặc định của các lựa chọn Bazel. /dev/null cho biết rằng tất cả các `--bazelrc`tiếp theo sẽ bị bỏ qua. Điều này hữu ích khi tắt tính năng tìm kiếm tệp rc của người dùng, chẳng hạn như trong bản phát hành.
Bạn cũng có thể chỉ định lựa chọn này nhiều lần.
Ví dụ: với `--bazelrc=x.rc --bazelrc=y.rc --bazelrc=/dev/null --bazelrc=z.rc`,
1) x.rc và y.rc được đọc.
2) z.rc bị bỏ qua do /dev/null trước đó.
Nếu không được chỉ định, Bazel sẽ sử dụng tệp .bazelrc đầu tiên mà nó tìm thấy ở 2 vị trí sau: thư mục không gian làm việc, sau đó là thư mục gốc của người dùng.
Lưu ý: các lựa chọn dòng lệnh sẽ luôn thay thế mọi lựa chọn trong bazelrc.
Thẻ:changes_inputs
--[no]block_for_lock
mặc định: "true"-
Khi --noblock_for_lock được truyền, Bazel sẽ không đợi một lệnh đang chạy hoàn tất mà sẽ thoát ngay lập tức.
Thẻ:eagerness_to_exit
--[no]client_debug
mặc định: "false"-
Nếu đúng, hãy ghi thông tin gỡ lỗi từ ứng dụng vào stderr. Việc thay đổi lựa chọn này sẽ không khiến máy chủ khởi động lại.
Thẻ:affects_outputs
,bazel_monitoring
--connect_timeout_secs=<an integer>
mặc định: "30"-
Khoảng thời gian mà máy khách chờ đợi mỗi lần cố gắng kết nối với máy chủ
Thẻ:bazel_internal_configuration
--digest_function=<hash function>
mặc định: xem nội dung mô tả-
Hàm băm cần dùng khi tính toán nội dung tóm tắt của tệp.
Thẻ:loses_incremental_state
,bazel_internal_configuration
--experimental_cgroup_parent=<path>
mặc định: xem nội dung mô tả-
Nhóm điều khiển nơi bắt đầu máy chủ bazel dưới dạng đường dẫn tuyệt đối. Quá trình máy chủ sẽ được khởi động trong cgroup đã chỉ định cho từng bộ điều khiển được hỗ trợ. Ví dụ: nếu giá trị của cờ này là /build/bazel và bộ điều khiển cpu và bộ nhớ được gắn lần lượt trên /sys/fs/cgroup/cpu và /sys/fs/cgroup/memory, thì máy chủ sẽ được khởi động trong cgroup /sys/fs/cgroup/cpu/build/bazel và /sys/fs/cgroup/memory/build/bazel.Sẽ không có lỗi nếu một hoặc nhiều bộ điều khiển không ghi được cgroup đã chỉ định. Tuỳ chọn này không có hiệu lực trên những nền tảng không hỗ trợ cgroup.
Thẻ:bazel_monitoring
,execution
--failure_detail_out=<path>
mặc định: xem nội dung mô tả-
Nếu được đặt, hãy chỉ định một vị trí để ghi thông báo protobuf failure_detail nếu máy chủ gặp lỗi và không thể báo cáo lỗi đó qua gRPC như bình thường. Nếu không, vị trí sẽ là ${OUTPUT_BASE}/failure_detail.rawproto.
Thẻ:affects_outputs
,loses_incremental_state
--[no]home_rc
mặc định: "true"-
Có tìm tệp bazelrc gốc tại $HOME/.bazelrc hay không
Thẻ:changes_inputs
--[no]idle_server_tasks
mặc định: "true"-
Chạy System.gc() khi máy chủ ở trạng thái rảnh
Thẻ:loses_incremental_state
,host_machine_resource_optimizations
--[no]ignore_all_rc_files
mặc định: "false"-
Tắt tất cả các tệp rc, bất kể giá trị của các cờ sửa đổi rc khác, ngay cả khi các cờ này xuất hiện sau trong danh sách các lựa chọn khởi động.
Thẻ:changes_inputs
--io_nice_level={-1,0,1,2,3,4,5,6,7}
mặc định: "-1"-
Chỉ trên Linux; đặt cấp độ từ 0 đến 7 để lập lịch IO hiệu quả nhất bằng cách sử dụng lệnh gọi hệ thống sys_ioprio_set. 0 là mức độ ưu tiên cao nhất, 7 là mức độ ưu tiên thấp nhất. Trình lập lịch dự đoán chỉ có thể tuân theo tối đa mức độ ưu tiên 4. Nếu được đặt thành giá trị âm, Bazel sẽ không thực hiện lệnh gọi hệ thống.
Thẻ:host_machine_resource_optimizations
--local_startup_timeout_secs=<an integer>
mặc định: "120"-
Khoảng thời gian tối đa mà máy khách chờ kết nối với máy chủ
Thẻ:bazel_internal_configuration
--macos_qos_class=<a string>
mặc định: "default"-
Đặt lớp dịch vụ QoS của máy chủ bazel khi chạy trên macOS. Cờ này không có hiệu lực trên tất cả các nền tảng khác nhưng được hỗ trợ để đảm bảo các tệp rc có thể được chia sẻ giữa các nền tảng mà không cần thay đổi. Các giá trị có thể là: user-interactive, user-initiated, default, utility và background.
Thẻ:host_machine_resource_optimizations
--max_idle_secs=<integer>
mặc định: "10800"-
Số giây mà máy chủ bản dựng sẽ chờ ở trạng thái rảnh trước khi tắt. 0 nghĩa là máy chủ sẽ không bao giờ tắt. Chế độ này chỉ được đọc khi khởi động máy chủ. Việc thay đổi chế độ này sẽ không khiến máy chủ khởi động lại.
Thẻ:eagerness_to_exit
,loses_incremental_state
--output_base=<path>
mặc định: xem nội dung mô tả-
Nếu được đặt, hãy chỉ định vị trí đầu ra mà tất cả đầu ra của bản dựng sẽ được ghi vào. Nếu không, vị trí sẽ là ${OUTPUT_ROOT}/_blaze_${USER}/${MD5_OF_WORKSPACE_ROOT}. Lưu ý: Nếu chỉ định một lựa chọn khác so với một lệnh gọi Bazel tiếp theo cho giá trị này, bạn có thể sẽ khởi động một máy chủ Bazel mới, bổ sung. Bazel khởi động chính xác một máy chủ cho mỗi cơ sở đầu ra được chỉ định. Thông thường, mỗi không gian làm việc sẽ có một cơ sở đầu ra. Tuy nhiên, với lựa chọn này, bạn có thể có nhiều cơ sở đầu ra cho mỗi không gian làm việc và do đó, chạy đồng thời nhiều bản dựng cho cùng một ứng dụng trên cùng một máy. Xem "bazel help shutdown" để biết cách tắt máy chủ Bazel.
Thẻ:affects_outputs
,loses_incremental_state
--output_user_root=<path>
mặc định: xem nội dung mô tả-
Thư mục dành riêng cho người dùng mà bên dưới đó tất cả các đầu ra bản dựng được ghi; theo mặc định, đây là một hàm của $USER, nhưng bằng cách chỉ định một hằng số, các đầu ra bản dựng có thể được chia sẻ giữa những người dùng cộng tác.
Thẻ:affects_outputs
,loses_incremental_state
--[no]preemptible
mặc định: "false"-
Nếu đúng, lệnh có thể bị huỷ nếu một lệnh khác được bắt đầu.
Thẻ:eagerness_to_exit
--[no]quiet
mặc định: "false"-
Nếu đúng, sẽ không có thông báo thông tin nào được phát trên bảng điều khiển, chỉ có lỗi. Việc thay đổi lựa chọn này sẽ không khiến máy chủ khởi động lại.
Thẻ:affects_outputs
,bazel_monitoring
--server_jvm_out=<path>
mặc định: xem nội dung mô tả-
Vị trí để ghi đầu ra của JVM của máy chủ. Nếu bạn không đặt thì hệ thống sẽ mặc định đặt một vị trí trong output_base.
Thẻ:affects_outputs
,loses_incremental_state
--[no]shutdown_on_low_sys_mem
mặc định: "false"-
Nếu bạn đặt max_idle_secs và máy chủ bản dựng đã ở trạng thái rảnh trong một khoảng thời gian, hãy tắt máy chủ khi hệ thống có ít RAM trống. Chỉ dành cho Linux.
Thẻ:eagerness_to_exit
,loses_incremental_state
--[no]system_rc
mặc định: "true"-
Có tìm bazelrc trên toàn hệ thống hay không.
Thẻ:changes_inputs
--[no]unlimit_coredumps
mặc định: "false"-
Tăng hạn mức kết xuất bộ nhớ mềm lên hạn mức cứng để có thể kết xuất bộ nhớ của máy chủ (bao gồm cả JVM) và máy khách trong các điều kiện thông thường. Hãy thêm cờ này vào bazelrc một lần và quên nó đi để bạn có thể nhận được coredump khi thực sự gặp phải một điều kiện kích hoạt chúng.
Thẻ:bazel_internal_configuration
--[no]watchfs
mặc định: "false"-
Nếu đúng, bazel sẽ cố gắng sử dụng dịch vụ theo dõi tệp của hệ điều hành cho các thay đổi cục bộ thay vì quét mọi tệp để tìm thay đổi.
Thẻ:deprecated
--[no]windows_enable_symlinks
mặc định: "false"-
Nếu đúng, các đường liên kết tượng trưng thực sẽ được tạo trên Windows thay vì sao chép tệp. Yêu cầu bạn bật chế độ nhà phát triển Windows và Windows 10 phiên bản 1703 trở lên.
Thẻ:bazel_internal_configuration
--[no]workspace_rc
mặc định: "true"-
Có tìm tệp bazelrc của không gian làm việc tại $workspace/.bazelrc hay không
Thẻ:changes_inputs
- Các lựa chọn khác, không được phân loại theo cách khác.:
--host_jvm_args=<jvm_arg>
nhiều mục đích sử dụng được tích luỹ- Cờ cần truyền đến JVM thực thi Blaze.
--host_jvm_debug
-
Tuỳ chọn thuận tiện để thêm một số cờ khởi động JVM bổ sung. Các cờ này khiến JVM chờ trong quá trình khởi động cho đến khi bạn kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như Eclipse) đến cổng 5005.
Mở rộng thành:
--host_jvm_args=-Xdebug
--host_jvm_args=-Xrunjdwp:transport=dt_socket,server=y,address=5005
--server_javabase=<jvm path>
mặc định: ""- Đường dẫn đến JVM dùng để thực thi chính Bazel.
Các lựa chọn chung cho tất cả các lệnh
- Các lựa chọn xuất hiện trước lệnh và được ứng dụng phân tích cú pháp:
--distdir=<a path>
nhiều mục đích sử dụng được tích luỹ-
Những nơi khác để tìm tệp lưu trữ trước khi truy cập vào mạng để tải xuống.
Thẻ:bazel_internal_configuration
--[no]experimental_repository_cache_hardlinks
mặc định: "false"-
Nếu được thiết lập, bộ nhớ đệm kho lưu trữ sẽ liên kết cứng tệp trong trường hợp có kết quả trùng khớp trong bộ nhớ đệm, thay vì sao chép. Việc này nhằm mục đích tiết kiệm dung lượng ổ đĩa.
Thẻ:bazel_internal_configuration
--experimental_repository_downloader_retries=<an integer>
mặc định: "5"-
Số lần thử lại tối đa khi gặp lỗi tải xuống. Nếu bạn đặt thành 0, thì các lần thử lại sẽ bị vô hiệu hoá.
Thẻ:experimental
--experimental_scale_timeouts=<a double>
mặc định: "1.0"-
Điều chỉnh tất cả thời gian chờ trong các quy tắc kho lưu trữ Starlark theo hệ số này. Bằng cách này, các kho lưu trữ bên ngoài có thể hoạt động trên những máy có tốc độ chậm hơn dự kiến của tác giả quy tắc mà không cần thay đổi mã nguồn
Thẻ:bazel_internal_configuration
,experimental
--http_connector_attempts=<an integer>
mặc định: "8"-
Số lần thử tối đa để tải xuống qua http.
Thẻ:bazel_internal_configuration
--http_connector_retry_max_timeout=<An immutable length of time.>
mặc định: "0s"-
Thời gian chờ tối đa cho các lần thử lại tải xuống qua http. Nếu có giá trị là 0, thì sẽ không có thời gian chờ tối đa nào được xác định.
Thẻ:bazel_internal_configuration
--http_max_parallel_downloads=<an integer>
mặc định: "8"-
Số lượt tải xuống http song song tối đa.
Thẻ:bazel_internal_configuration
--http_timeout_scaling=<a double>
mặc định: "1.0"-
Điều chỉnh tất cả thời gian chờ liên quan đến hoạt động tải xuống http theo hệ số đã cho
Thẻ:bazel_internal_configuration
--[no]incompatible_disable_native_repo_rules
mặc định: "false"-
Nếu là false, bạn có thể sử dụng các quy tắc kho lưu trữ gốc trong WORKSPACE; nếu không, bạn phải sử dụng các quy tắc kho lưu trữ Starlark. Các quy tắc kho lưu trữ gốc bao gồm local_repository, new_local_repository, local_config_platform và android_sdk_repository.
Thẻ:bazel_internal_configuration
--repository_cache=<a path>
mặc định: xem nội dung mô tả-
Chỉ định vị trí lưu trữ của các giá trị đã tải xuống thu được trong quá trình tìm nạp kho lưu trữ bên ngoài. Một chuỗi trống làm đối số yêu cầu vô hiệu hoá bộ nhớ đệm, nếu không, giá trị mặc định là "<output_user_root>/cache/repos/v1" sẽ được dùng
Thẻ:bazel_internal_configuration
--[no]repository_disable_download
mặc định: "false"-
Nếu được đặt, bạn không được phép tải xuống bằng ctx.download{,_and_extract} trong quá trình tìm nạp kho lưu trữ. Xin lưu ý rằng quyền truy cập vào mạng không bị vô hiệu hoá hoàn toàn; ctx.execute vẫn có thể chạy một tệp thực thi tuỳ ý truy cập vào Internet.
Thẻ:bazel_internal_configuration
- Các lựa chọn kiểm soát việc thực thi bản dựng:
--experimental_ui_max_stdouterr_bytes=<an integer in (-1)-1073741819 range>
mặc định: "1048576"-
Kích thước tối đa của các tệp stdout / stderr sẽ được in ra bảng điều khiển. -1 có nghĩa là không có giới hạn.
Thẻ:execution
--gc_thrashing_threshold=<an integer in 0-100 range>
mặc định: "100"-
Tỷ lệ phần trăm không gian được duy trì (0-100) mà GcThrashingDetector coi các sự kiện áp lực bộ nhớ là vượt quá giới hạn của nó (--gc_thrashing_limits). Nếu bạn đặt thành 100, GcThrashingDetector sẽ bị vô hiệu hoá.
Thẻ:host_machine_resource_optimizations
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--[no]incompatible_enable_proto_toolchain_resolution
mặc định: "false"-
Nếu đúng, các quy tắc về ngôn ngữ proto sẽ xác định chuỗi công cụ từ kho lưu trữ protobuf.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra đó, chứ không phải sự tồn tại của đầu ra:
--bep_maximum_open_remote_upload_files=<an integer>
mặc định: "-1"-
Số lượng tệp đang mở tối đa được phép trong quá trình tải cấu phần phần mềm BEP lên.
Thẻ:affects_outputs
--remote_download_all
-
Tải tất cả đầu ra từ xa xuống thiết bị. Cờ này là một bí danh cho --remote_download_outputs=all.
Mở rộng thành:
--remote_download_outputs=all
Thẻ:affects_outputs
--remote_download_minimal
-
Không tải bất kỳ đầu ra bản dựng từ xa nào xuống thiết bị cục bộ. Cờ này là một bí danh cho --remote_download_outputs=minimal.
Mở rộng thành:
--remote_download_outputs=minimal
Thẻ:affects_outputs
--remote_download_outputs=<all, minimal or toplevel>
mặc định: "toplevel"-
Nếu được đặt thành "minimal" (tối thiểu), thì sẽ không tải bất kỳ đầu ra bản dựng từ xa nào xuống máy cục bộ, ngoại trừ những đầu ra cần thiết cho các thao tác cục bộ. Nếu được đặt thành "toplevel", thì sẽ hoạt động như "minimal" ngoại trừ việc nó cũng tải đầu ra của các mục tiêu cấp cao nhất xuống máy cục bộ. Cả hai lựa chọn này đều có thể giảm đáng kể thời gian xây dựng nếu băng thông mạng là một điểm nghẽn.
Thẻ:affects_outputs
--remote_download_symlink_template=<a string>
mặc định: ""-
Thay vì tải đầu ra của bản dựng từ xa xuống máy cục bộ, hãy tạo các đường liên kết tượng trưng. Bạn có thể chỉ định đích của các đường liên kết tượng trưng dưới dạng một chuỗi mẫu. Chuỗi mẫu này có thể chứa {hash} và {size_bytes} lần lượt mở rộng thành hàm băm của đối tượng và kích thước tính bằng byte. Ví dụ: các đường liên kết tượng trưng này có thể trỏ đến một hệ thống tệp FUSE tải các đối tượng từ CAS theo yêu cầu.
Thẻ:affects_outputs
--remote_download_toplevel
-
Chỉ tải đầu ra từ xa của các mục tiêu cấp cao nhất xuống thiết bị. Cờ này là một tên thay thế cho --remote_download_outputs=toplevel.
Mở rộng thành:
--remote_download_outputs=toplevel
Thẻ:affects_outputs
--repo_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung chỉ có trong các quy tắc kho lưu trữ. Xin lưu ý rằng các quy tắc kho lưu trữ vẫn thấy toàn bộ môi trường, nhưng theo cách này, thông tin cấu hình có thể được truyền đến các kho lưu trữ thông qua các lựa chọn mà không làm mất hiệu lực biểu đồ hành động.
Thẻ:action_command_lines
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_bzl_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi hiển thị khi tải .bzl sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]enable_bzlmod
mặc định: "true"-
Nếu đúng, hệ thống quản lý phần phụ thuộc Bzlmod sẽ được bật và được ưu tiên hơn WORKSPACE. Hãy truy cập vào https://bazel.build/docs/bzlmod để biết thêm thông tin.
Thẻ:loading_and_analysis
--[no]enable_workspace
mặc định: "false"-
Nếu đúng, hãy bật hệ thống WORKSPACE cũ cho các phần phụ thuộc bên ngoài. Hãy truy cập vào https://bazel.build/external/overview để biết thêm thông tin.
Thẻ:loading_and_analysis
--[no]experimental_action_resource_set
mặc định: "true"-
Nếu được đặt thành true, ctx.actions.run() và ctx.actions.run_shell() sẽ chấp nhận tham số resource_set để thực thi cục bộ. Nếu không, kích thước mặc định sẽ là 250 MB cho bộ nhớ và 1 CPU.
Thẻ:execution
,build_file_semantics
,experimental
--[no]experimental_bzl_visibility
mặc định: "true"-
Nếu được bật, sẽ thêm một hàm `visibility()` mà các tệp .bzl có thể gọi trong quá trình đánh giá cấp cao nhất để đặt chế độ hiển thị cho mục đích của câu lệnh load().
Thẻ:loading_and_analysis
,experimental
-
Nếu được đặt thành true, các thuộc tính quy tắc và phương thức API Starlark cần thiết cho quy tắc cc_shared_library sẽ có sẵn
Thẻ:build_file_semantics
,loading_and_analysis
,experimental
--[no]experimental_cc_static_library
mặc định: "false"-
Nếu được đặt thành true, các thuộc tính quy tắc và phương thức Starlark API cần thiết cho quy tắc cc_static_library sẽ có sẵn
Thẻ:build_file_semantics
,loading_and_analysis
,experimental
--[no]experimental_disable_external_package
mặc định: "false"-
Nếu bạn đặt thành true, gói bên ngoài được tạo tự động sẽ không còn dùng được nữa. Bazel vẫn không thể phân tích cú pháp tệp "external/BUILD", nhưng các glob tiếp cận external/ từ gói không tên sẽ hoạt động.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_dormant_deps
mặc định: "false"-
Nếu bạn đặt thành true, thì attr.label(materializer=), attr(for_dependency_resolution=), attr.dormant_label(), attr.dormant_label_list() và rule(for_dependency_resolution=) sẽ được cho phép.
Thẻ:build_file_semantics
,experimental
--[no]experimental_enable_android_migration_apis
mặc định: "false"-
Nếu được đặt thành true, thì sẽ bật các API cần thiết để hỗ trợ quá trình di chuyển Android Starlark.
Thẻ:build_file_semantics
--[no]experimental_enable_first_class_macros
mặc định: "true"-
Nếu bạn đặt thành true, thì cấu trúc "macro()" sẽ được bật để xác định các macro tượng trưng.
Thẻ:build_file_semantics
--[no]experimental_enable_scl_dialect
mặc định: "true"-
Nếu bạn đặt thành true, thì các tệp .scl có thể được dùng trong câu lệnh load().
Thẻ:build_file_semantics
--[no]experimental_google_legacy_api
mặc định: "false"-
Nếu được đặt thành true, sẽ hiển thị một số phần thử nghiệm của API bản dựng Starlark liên quan đến mã cũ của Google.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_isolated_extension_usages
mặc định: "false"-
Nếu đúng, hãy bật tham số <code>isolate</code> trong hàm <a href="https://bazel.build/rules/lib/globals/module#use_extension"><code>use_extension</code></a>.
Thẻ:loading_and_analysis
--[no]experimental_java_library_export
mặc định: "false"-
Nếu được bật, mô-đun experimental_java_library_export_do_not_use sẽ có sẵn.
Thẻ:loading_and_analysis
,incompatible_change
--[no]experimental_platforms_api
mặc định: "false"-
Nếu được đặt thành true, thì sẽ bật một số API Starlark liên quan đến nền tảng, hữu ích cho việc gỡ lỗi.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_repo_remote_exec
mặc định: "false"-
Nếu được đặt thành true, repository_rule sẽ có một số khả năng thực thi từ xa.
Thẻ:build_file_semantics
,loading_and_analysis
,experimental
--[no]experimental_sibling_repository_layout
mặc định: "false"-
Nếu được đặt thành true, các kho lưu trữ không phải kho lưu trữ chính sẽ được đặt dưới dạng các đường liên kết tượng trưng đến kho lưu trữ chính trong thư mục gốc thực thi. Tức là tất cả các kho lưu trữ đều là phần tử con trực tiếp của thư mục $output_base/execution_root. Điều này có tác dụng phụ là giải phóng $output_base/execution_root/__main__/external cho thư mục "external" cấp cao nhất thực sự.
Thẻ:action_command_lines
,bazel_internal_configuration
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_single_package_toolchain_binding
mặc định: "false"-
Nếu được bật, hàm register_toolchain có thể không bao gồm các mẫu mục tiêu có thể tham chiếu đến nhiều gói.
Thẻ:loading_and_analysis
,incompatible_change
-
Nếu được đặt thành true, các thẻ sẽ được truyền từ một mục tiêu đến các yêu cầu thực thi của hành động; nếu không, các thẻ sẽ không được truyền. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/8830 để biết thông tin chi tiết.
Thẻ:build_file_semantics
,experimental
--[no]incompatible_always_check_depset_elements
mặc định: "true"-
Kiểm tra tính hợp lệ của các phần tử được thêm vào depsets, trong tất cả các hàm khởi tạo. Các phần tử phải là bất biến, nhưng trước đây, hàm khởi tạo depset(direct=...) quên kiểm tra. Sử dụng bộ giá trị thay vì danh sách trong các phần tử depset. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/10313 để biết thông tin chi tiết.
Thẻ:build_file_semantics
,incompatible_change
--incompatible_autoload_externally=<comma-separated set of options>
mặc định: "+@rules_python,+java_common,+JavaInfo,+JavaPluginInfo,ProguardSpecProvider,java_binary,java_import,java_library,java_plugin,java_test,java_runtime,java_toolchain,java_package_configuration,@com_google_protobuf,@rules_shell,+@rules_android"-
Một danh sách các quy tắc (hoặc các biểu tượng khác) được phân tách bằng dấu phẩy, trước đây là một phần của Bazel và hiện được truy xuất từ các kho lưu trữ bên ngoài tương ứng. Cờ này được dùng để hỗ trợ việc di chuyển các quy tắc ra khỏi Bazel. Xem thêm tại https://github.com/bazelbuild/bazel/issues/23043.
Một biểu tượng được tự động tải trong một tệp sẽ hoạt động như thể định nghĩa được tích hợp sẵn của biểu tượng đó trong Bazel đã được thay thế bằng định nghĩa mới chuẩn tắc của biểu tượng đó trong một kho lưu trữ bên ngoài. Đối với tệp BUILD, điều này có nghĩa là bạn sẽ ngầm thêm một câu lệnh load(). Đối với tệp .bzl, đó có thể là một câu lệnh load() hoặc một thay đổi đối với một trường của đối tượng "native", tuỳ thuộc vào việc biểu tượng được tự động tải có phải là một quy tắc hay không.
Bazel duy trì một danh sách được mã hoá cứng gồm tất cả các biểu tượng có thể được tự động tải; chỉ những biểu tượng đó mới có thể xuất hiện trong cờ này. Đối với mỗi biểu tượng, Bazel biết vị trí định nghĩa mới trong một kho lưu trữ bên ngoài, cũng như một tập hợp các kho lưu trữ đặc biệt không được tự động tải để tránh tạo ra các chu kỳ.
Một mục danh sách "+foo" trong cờ này khiến biểu tượng foo được tự động tải, ngoại trừ trong các kho lưu trữ được miễn của foo, trong đó phiên bản do Bazel xác định của foo vẫn có sẵn.
Một mục trong danh sách "foo" sẽ kích hoạt tính năng tự động tải như trên, nhưng phiên bản foo do Bazel xác định sẽ không được cung cấp cho các kho lưu trữ bị loại trừ. Điều này đảm bảo rằng kho lưu trữ bên ngoài của foo không phụ thuộc vào việc triển khai Bazel cũ của foo. Mục danh sách "-foo" không kích hoạt bất kỳ tính năng tự động tải nào, nhưng khiến phiên bản foo do Bazel xác định không truy cập được trong toàn bộ không gian làm việc. Thao tác này dùng để xác thực rằng không gian làm việc đã sẵn sàng để định nghĩa của foo bị xoá khỏi Bazel.
Nếu một biểu tượng không được đặt tên trong cờ này, thì biểu tượng đó sẽ tiếp tục hoạt động bình thường – không có thao tác tự động tải nào được thực hiện, cũng như phiên bản do Bazel xác định không bị chặn. Để biết thông tin về cấu hình, hãy xem https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java. Bạn cũng có thể sử dụng toàn bộ kho lưu trữ làm lối tắt, ví dụ: +@rules_python sẽ tự động tải tất cả các quy tắc Python.
Thẻ:loses_incremental_state
,build_file_semantics
,incompatible_change
--[no]incompatible_depset_for_libraries_to_link_getter
mặc định: "true"-
Khi đúng, Bazel sẽ không trả về danh sách từ linking_context.libraries_to_link nữa mà thay vào đó sẽ trả về một depset.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disable_objc_library_transition
mặc định: "true"-
Tắt quá trình chuyển đổi tuỳ chỉnh của objc_library và kế thừa từ mục tiêu cấp cao nhất (Không hoạt động trong Bazel)
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_starlark_host_transitions
mặc định: "false"-
Nếu được đặt thành true, các thuộc tính quy tắc không thể đặt "cfg = "host"". Thay vào đó, các quy tắc nên đặt "cfg = "exec"".
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disable_target_default_provider_fields
mặc định: "false"-
Nếu được đặt thành true, hãy tắt khả năng truy cập vào các trình cung cấp trên các đối tượng "target" thông qua cú pháp trường. Thay vào đó, hãy sử dụng cú pháp khoá của nhà cung cấp. Ví dụ: thay vì dùng `ctx.attr.dep.my_info` để truy cập vào `my_info` từ bên trong một hàm triển khai quy tắc, hãy dùng `ctx.attr.dep[MyInfo]`. Xem https://github.com/bazelbuild/bazel/issues/9014 để biết thông tin chi tiết.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_target_provider_fields
mặc định: "false"-
Nếu được đặt thành true, hãy tắt khả năng sử dụng trình cung cấp mặc định thông qua cú pháp trường. Thay vào đó, hãy sử dụng cú pháp khoá của nhà cung cấp. Ví dụ: thay vì dùng "ctx.attr.dep.files" để truy cập vào "files", hãy sử dụng "ctx.attr.dep[DefaultInfo].files Xem https://github.com/bazelbuild/bazel/issues/9014 để biết thông tin chi tiết.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disallow_ctx_resolve_tools
mặc định: "true"-
Nếu bạn đặt thành true, thì việc gọi API ctx.resolve_tools không dùng nữa sẽ luôn không thành công. Việc sử dụng API này nên được thay thế bằng một đối số có thể thực thi hoặc đối số công cụ cho ctx.actions.run hoặc ctx.actions.run_shell.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_empty_glob
mặc định: "true"-
Nếu được đặt thành true, giá trị mặc định của đối số "allow_empty" của glob() là False.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disallow_struct_provider_syntax
mặc định: "true"-
Nếu được đặt thành true, các hàm triển khai quy tắc có thể không trả về một cấu trúc. Thay vào đó, chúng phải trả về một danh sách các thực thể trình cung cấp.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_enable_deprecated_label_apis
mặc định: "true"-
Nếu được bật, bạn có thể sử dụng một số API không dùng nữa (native.repository_name, Label.workspace_name, Label.relative).
Thẻ:loading_and_analysis
--[no]incompatible_fail_on_unknown_attributes
mặc định: "true"-
Nếu được bật, những mục tiêu có thuộc tính không xác định được đặt thành None sẽ không thành công.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_fix_package_group_reporoot_syntax
mặc định: "true"-
Trong thuộc tính "packages" của package_group, thay đổi ý nghĩa của giá trị "//..." để chỉ tất cả các gói trong kho lưu trữ hiện tại thay vì tất cả các gói trong bất kỳ kho lưu trữ nào. Bạn có thể sử dụng giá trị đặc biệt "public" thay cho "//..." để có được hành vi cũ. Cờ này yêu cầu bạn cũng phải bật --incompatible_package_group_has_public_syntax.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_java_common_parameters
mặc định: "true"-
Nếu được đặt thành true, các tham số output_jar và host_javabase trong pack_sources và host_javabase trong compile sẽ bị xoá.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_merge_fixed_and_default_shell_env
mặc định: "true"-
Nếu được bật, các thao tác đã đăng ký bằng ctx.actions.run và ctx.actions.run_shell với cả "env" và "use_default_shell_env = True" được chỉ định sẽ sử dụng một môi trường thu được từ môi trường shell mặc định bằng cách ghi đè bằng các giá trị được truyền vào "env". Nếu bị vô hiệu hoá, giá trị của "env" sẽ hoàn toàn bị bỏ qua trong trường hợp này.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_no_attr_license
mặc định: "true"-
Nếu được đặt thành true, hàm `attr.license` sẽ bị vô hiệu hoá.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_no_implicit_file_export
mặc định: "false"-
Nếu được đặt, các tệp nguồn (đã dùng) sẽ là gói riêng tư trừ phi được xuất một cách rõ ràng. Xem https://github.com/bazelbuild/proposals/blob/master/designs/2019-10-24-file-visibility.md
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_no_implicit_watch_label
mặc định: "true"-
Nếu đúng, thì các phương thức trên <code>repository_ctx</code> được truyền một Nhãn sẽ không còn tự động theo dõi tệp theo nhãn đó để biết các thay đổi ngay cả khi <code>watch = "no"</code> và <code>repository_ctx.path</code> không còn khiến đường dẫn được trả về được theo dõi nữa. Hãy sử dụng <code>repository_ctx.watch</code>.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_no_rule_outputs_param
mặc định: "false"-
Nếu được đặt thành true, thì sẽ tắt tham số "outputs" của hàm Starlark "rule()".
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_package_group_has_public_syntax
mặc định: "true"-
Trong thuộc tính "packages" của package_group, cho phép ghi "public" hoặc "private" để lần lượt tham chiếu đến tất cả các gói hoặc không có gói nào.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_require_linker_input_cc_api
mặc định: "true"-
Nếu được đặt thành true, quy tắc create_linking_context sẽ yêu cầu linker_inputs thay vì libraries_to_link. Các getter cũ của linking_context cũng sẽ bị vô hiệu hoá và chỉ có linker_inputs.
Thẻ:build_file_semantics
,loading_and_analysis
,incompatible_change
--[no]incompatible_run_shell_command_string
mặc định: "true"-
Nếu được đặt thành true, tham số lệnh của actions.run_shell sẽ chỉ chấp nhận chuỗi
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_simplify_unconditional_selects_in_rule_attrs
mặc định: "true"-
Nếu đúng, hãy đơn giản hoá các thuộc tính quy tắc có thể định cấu hình chỉ chứa các lựa chọn vô điều kiện; ví dụ: nếu ["a"] + select("//conditions:default", ["b"]) được chỉ định cho một thuộc tính quy tắc, thì thuộc tính đó sẽ được lưu trữ dưới dạng ["a", "b"]. Lựa chọn này không ảnh hưởng đến các thuộc tính của macro tượng trưng hoặc giá trị mặc định của thuộc tính.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_stop_exporting_build_file_path
mặc định: "false"- Nếu bạn đặt thành true, thì ctx.build_file_path không dùng nữa sẽ không có sẵn. Thay vào đó, bạn có thể dùng ctx.label.package + "/BUILD".
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_stop_exporting_language_modules
mặc định: "false"-
Nếu được bật, một số mô-đun dành riêng cho ngôn ngữ (chẳng hạn như "cc_common") sẽ không có trong các tệp .bzl của người dùng và chỉ có thể được gọi từ các kho quy tắc tương ứng.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_top_level_aspects_require_providers
mặc định: "true"-
Nếu được đặt thành true, khía cạnh cấp cao nhất sẽ tuân thủ các nhà cung cấp bắt buộc và chỉ chạy trên các mục tiêu cấp cao nhất có các nhà cung cấp được quảng cáo theo quy tắc đáp ứng các nhà cung cấp bắt buộc của khía cạnh.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_unambiguous_label_stringification
mặc định: "true"-
Khi đúng, Bazel sẽ chuyển đổi nhãn @//foo:bar thành @//foo:bar thay vì //foo:bar. Điều này chỉ ảnh hưởng đến hành vi của str(), toán tử % và các toán tử khác; hành vi của repr() không thay đổi. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15916 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_cc_configure_from_rules_cc
mặc định: "false"-
Khi đúng, Bazel sẽ không cho phép sử dụng cc_configure từ @bazel_tools nữa. Vui lòng xem https://github.com/bazelbuild/bazel/issues/10134 để biết thông tin chi tiết và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
--max_computation_steps=<a long integer>
mặc định: "0"-
Số bước tính toán tối đa của Starlark mà một tệp BUILD có thể thực thi (0 nghĩa là không có giới hạn).
Thẻ:build_file_semantics
--nested_set_depth_limit=<an integer>
mặc định: "3500"-
Độ sâu tối đa của biểu đồ bên trong một depset (còn gọi là NestedSet), vượt quá mức này thì hàm dựng depset() sẽ không thành công.
Thẻ:loading_and_analysis
--repositories_without_autoloads=<comma-separated set of options>
mặc định: ""-
Danh sách các kho lưu trữ bổ sung (ngoài những kho lưu trữ được mã hoá cứng mà Bazel biết) mà không được thêm tính năng tự động tải. Thường thì danh sách này sẽ chứa các kho lưu trữ được một kho lưu trữ phụ thuộc bắc cầu (kho lưu trữ này có thể được tải tự động và do đó có khả năng tạo ra một chu kỳ).
Thẻ:loses_incremental_state
,build_file_semantics
,incompatible_change
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của Bzlmod:
--allow_yanked_versions=<a string>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các phiên bản mô-đun ở dạng "<module1>@<version1>,<module2>@<version2>" sẽ được cho phép trong biểu đồ phần phụ thuộc đã phân giải ngay cả khi chúng được khai báo là bị loại bỏ trong sổ đăng ký nơi chúng đến (nếu chúng không đến từ NonRegistryOverride). Nếu không, các phiên bản bị rút sẽ khiến quá trình phân giải không thành công. Bạn cũng có thể xác định phiên bản bị rút lại được phép bằng biến môi trường "BZLMOD_ALLOW_YANKED_VERSIONS". Bạn có thể tắt chế độ kiểm tra này bằng cách sử dụng từ khoá "all" (không nên dùng).
Thẻ:loading_and_analysis
--check_bazel_compatibility=<error, warning or off>
mặc định: "error"-
Kiểm tra khả năng tương thích phiên bản bazel của các mô-đun Bazel. Các giá trị hợp lệ là "error" (lỗi) để tăng mức độ nghiêm trọng thành lỗi phân giải, "off" (tắt) để tắt quy trình kiểm tra hoặc "warning" (cảnh báo) để in cảnh báo khi phát hiện thấy sự không khớp.
Thẻ:loading_and_analysis
--check_direct_dependencies=<off, warning or error>
mặc định: "warning"-
Kiểm tra xem các phần phụ thuộc `bazel_dep` trực tiếp được khai báo trong mô-đun gốc có phải là các phiên bản mà bạn nhận được trong biểu đồ phần phụ thuộc đã phân giải hay không. Các giá trị hợp lệ là "off" để tắt chế độ kiểm tra, "warning" để in cảnh báo khi phát hiện thấy sự không khớp hoặc "error" để tăng mức độ nghiêm trọng thành lỗi phân giải.
Thẻ:loading_and_analysis
--[no]ignore_dev_dependency
mặc định: "false"-
Nếu đúng, Bazel sẽ bỏ qua `bazel_dep` và `use_extension` được khai báo là `dev_dependency` trong MODULE.bazel của mô-đun gốc. Xin lưu ý rằng các phần phụ thuộc dành cho nhà phát triển đó luôn bị bỏ qua trong MODULE.bazel nếu đó không phải là mô-đun gốc, bất kể giá trị của cờ này là gì.
Thẻ:loading_and_analysis
--lockfile_mode=<off, update, refresh or error>
mặc định: "update"-
Chỉ định cách sử dụng lockfile và có sử dụng hay không. Các giá trị hợp lệ là "update" để sử dụng tệp khoá và cập nhật tệp đó nếu có thay đổi, "refresh" để thỉnh thoảng làm mới thêm thông tin có thể thay đổi (các phiên bản bị rút lại và các mô-đun bị thiếu trước đó) từ các sổ đăng ký từ xa, "error" để sử dụng tệp khoá nhưng đưa ra lỗi nếu tệp đó không phải là phiên bản mới nhất hoặc "off" để không đọc hoặc ghi vào tệp khoá.
Thẻ:loading_and_analysis
--override_module=<an equals-separated mapping of module name to path>
nhiều mục đích sử dụng được tích luỹ- Ghi đè một mô-đun bằng đường dẫn cục bộ theo dạng <tên mô-đun>=<đường dẫn>. Nếu đường dẫn đã cho là đường dẫn tuyệt đối, thì đường dẫn đó sẽ được sử dụng nguyên trạng. Nếu đường dẫn đã cho là đường dẫn tương đối, thì đường dẫn đó sẽ tương ứng với thư mục đang hoạt động. Nếu đường dẫn đã cho bắt đầu bằng "%workspace%", thì đường dẫn đó sẽ tương ứng với thư mục gốc của không gian làm việc, là đầu ra của "bazel info workspace". Nếu đường dẫn đã cho là trống, hãy xoá mọi chế độ ghi đè trước đó.
--registry=<a string>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các sổ đăng ký cần dùng để xác định vị trí các phần phụ thuộc của mô-đun Bazel. Thứ tự này rất quan trọng: các mô-đun sẽ được tra cứu trước trong các sổ đăng ký trước đó và chỉ quay lại các sổ đăng ký sau này khi chúng bị thiếu trong các sổ đăng ký trước đó.
Thẻ:changes_inputs
--vendor_dir=<a path>
mặc định: xem nội dung mô tả-
Chỉ định thư mục chứa các kho lưu trữ bên ngoài ở chế độ nhà cung cấp, cho dù nhằm mục đích tìm nạp các kho lưu trữ đó vào thư mục hay sử dụng chúng trong khi tạo. Bạn có thể chỉ định đường dẫn dưới dạng đường dẫn tuyệt đối hoặc đường dẫn tương ứng với thư mục không gian làm việc.
Thẻ:loading_and_analysis
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--gc_thrashing_limits=<comma separated pairs of <period>:<count>>
mặc định: "1s:2,20s:3,1m:5"-
Giới hạn mà nếu đạt đến, GcThrashingDetector sẽ khiến Bazel gặp sự cố do hết bộ nhớ. Mỗi giới hạn được chỉ định là <period>:<count>, trong đó period là khoảng thời gian và count là một số nguyên dương. Nếu hơn --gc_thrashing_threshold phần trăm không gian được duy trì (heap thế hệ cũ) vẫn được sử dụng sau <count> lần GC đầy liên tiếp trong <period>, thì sẽ xảy ra lỗi hết bộ nhớ. Bạn có thể chỉ định nhiều giới hạn và phân tách bằng dấu phẩy.
Thẻ:host_machine_resource_optimizations
--[no]heuristically_drop_nodes
mặc định: "false"-
Nếu đúng, Blaze sẽ xoá các nút FileState và DirectoryListingState sau khi nút File và DirectoryListing liên quan hoàn tất để tiết kiệm bộ nhớ. Chúng tôi dự kiến bạn sẽ ít cần đến các nút này nữa. Nếu có, chương trình sẽ đánh giá lại các mục đó.
Thẻ:loses_incremental_state
--[no]incompatible_do_not_split_linking_cmdline
mặc định: "true"-
Khi đúng, Bazel sẽ không sửa đổi cờ dòng lệnh dùng để liên kết nữa, đồng thời cũng không chọn lọc những cờ nào sẽ chuyển đến tệp tham số và những cờ nào không. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/7670 để biết thông tin chi tiết.
Thẻ:loading_and_analysis
,incompatible_change
--[no]keep_state_after_build
mặc định: "true"-
Nếu là false, Blaze sẽ loại bỏ trạng thái trong bộ nhớ khỏi bản dựng này khi bản dựng hoàn tất. Các bản dựng tiếp theo sẽ không có mức tăng nào so với bản dựng này.
Thẻ:loses_incremental_state
--skyframe_high_water_mark_full_gc_drops_per_invocation=<an integer, >= 0>
mặc định: "10"-
Cờ để định cấu hình nâng cao công cụ Skyframe nội bộ của Bazel. Nếu Bazel phát hiện thấy mức sử dụng phần trăm heap được giữ lại vượt quá ngưỡng do --skyframe_high_water_mark_threshold đặt, thì khi sự kiện GC đầy đủ xảy ra, Bazel sẽ loại bỏ trạng thái Skyframe tạm thời không cần thiết, tối đa số lần này cho mỗi lệnh gọi. Giá trị mặc định là 10. Số 0 có nghĩa là các sự kiện GC đầy đủ sẽ không bao giờ kích hoạt các lần giảm. Nếu đạt đến hạn mức, trạng thái Skyframe sẽ không còn bị giảm khi xảy ra sự kiện GC đầy đủ và vượt quá ngưỡng phần trăm heap được giữ lại.
Thẻ:host_machine_resource_optimizations
--skyframe_high_water_mark_minor_gc_drops_per_invocation=<an integer, >= 0>
mặc định: "10"-
Cờ để định cấu hình nâng cao công cụ Skyframe nội bộ của Bazel. Nếu Bazel phát hiện thấy mức sử dụng phần trăm heap được giữ lại vượt quá ngưỡng do --skyframe_high_water_mark_threshold đặt, thì khi một sự kiện GC nhỏ xảy ra, Bazel sẽ loại bỏ trạng thái Skyframe tạm thời không cần thiết, tối đa số lần này cho mỗi lệnh gọi. Giá trị mặc định là 10. 0 có nghĩa là các sự kiện GC nhỏ sẽ không bao giờ kích hoạt các lần giảm. Nếu đạt đến hạn mức, trạng thái Skyframe sẽ không còn bị giảm khi một sự kiện GC nhỏ xảy ra và vượt quá ngưỡng phần trăm heap được giữ lại đó.
Thẻ:host_machine_resource_optimizations
--skyframe_high_water_mark_threshold=<an integer>
mặc định: "85"-
Cờ để định cấu hình nâng cao công cụ Skyframe nội bộ của Bazel. Nếu Bazel phát hiện thấy mức sử dụng phần trăm heap được giữ lại ít nhất là ngưỡng này, thì Bazel sẽ loại bỏ trạng thái Skyframe tạm thời không cần thiết. Việc điều chỉnh này có thể giúp bạn giảm thiểu tác động của thời gian thực lên hiện tượng GC thrashing, khi hiện tượng này (i) là do mức sử dụng bộ nhớ của trạng thái tạm thời này và (ii) tốn kém hơn so với việc khôi phục trạng thái khi cần.
Thẻ:host_machine_resource_optimizations
--[no]track_incremental_state
mặc định: "true"-
Nếu là false, Blaze sẽ không duy trì dữ liệu cho phép vô hiệu hoá và đánh giá lại trên các bản dựng gia tăng để tiết kiệm bộ nhớ trên bản dựng này. Các bản dựng tiếp theo sẽ không có mức tăng nào so với bản dựng này. Thông thường, bạn sẽ muốn chỉ định --batch khi đặt giá trị này thành false.
Thẻ:loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của nhật ký:
--[no]announce_rc
mặc định: "false"-
Có thông báo các lựa chọn rc hay không.
Thẻ:affects_outputs
--[no]attempt_to_print_relative_paths
mặc định: "false"-
Khi in phần vị trí của thông báo, hãy cố gắng sử dụng một đường dẫn tương ứng với thư mục không gian làm việc hoặc một trong các thư mục được chỉ định bằng --package_path.
Thẻ:terminal_output
--bes_backend=<a string>
mặc định: ""-
Chỉ định điểm cuối phụ trợ của dịch vụ sự kiện bản dựng (BES) ở dạng [SCHEME://]HOST[:PORT]. Chế độ mặc định là tắt tính năng tải BES lên. Các lược đồ được hỗ trợ là grpc và grpcs (grpc có bật TLS). Nếu không có lược đồ nào được cung cấp, Bazel sẽ giả định grpcs.
Thẻ:affects_outputs
--[no]bes_check_preceding_lifecycle_events
mặc định: "false"-
Đặt trường check_preceding_lifecycle_events_present trên PublishBuildToolEventStreamRequest. Trường này cho biết BES có kiểm tra xem trước đó BES đã nhận được các sự kiện InvocationAttemptStarted và BuildEnqueued khớp với sự kiện công cụ hiện tại hay không.
Thẻ:affects_outputs
--bes_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định một tiêu đề ở dạng NAME=VALUE sẽ được đưa vào các yêu cầu BES. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
Thẻ:affects_outputs
--bes_instance_name=<a string>
mặc định: xem nội dung mô tả-
Chỉ định tên phiên bản mà BES sẽ duy trì BEP đã tải lên. Giá trị mặc định là rỗng.
Thẻ:affects_outputs
--bes_keywords=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định danh sách từ khoá thông báo sẽ được thêm vào bộ từ khoá mặc định được xuất bản cho BES ("command_name=<command_name> ", "protocol_name=BEP"). Giá trị mặc định là không có.
Thẻ:affects_outputs
--[no]bes_lifecycle_events
mặc định: "true"-
Chỉ định có xuất bản các sự kiện trong vòng đời của BES hay không. (mặc định là "true").
Thẻ:affects_outputs
--bes_oom_finish_upload_timeout=<An immutable length of time.>
mặc định: "10m"-
Chỉ định thời gian bazel phải chờ quá trình tải BES/BEP lên hoàn tất trong khi OOMing. Cờ này đảm bảo việc chấm dứt khi JVM bị giảm hiệu suất GC nghiêm trọng và không thể tiến hành bất kỳ luồng người dùng nào.
Thẻ:bazel_monitoring
--bes_outerr_buffer_size=<an integer>
mặc định: "10240"-
Chỉ định kích thước tối đa của stdout hoặc stderr cần được lưu vào bộ nhớ đệm trong BEP, trước khi được báo cáo dưới dạng một sự kiện tiến trình. Các thao tác ghi riêng lẻ vẫn được báo cáo trong một sự kiện duy nhất, ngay cả khi lớn hơn giá trị được chỉ định cho đến --bes_outerr_chunk_size.
Thẻ:affects_outputs
--bes_outerr_chunk_size=<an integer>
mặc định: "1048576"-
Chỉ định kích thước tối đa của stdout hoặc stderr sẽ được gửi đến BEP trong một thông báo.
Thẻ:affects_outputs
--bes_proxy=<a string>
mặc định: xem nội dung mô tả- Kết nối với Dịch vụ sự kiện bản dựng thông qua một proxy. Hiện tại, bạn chỉ có thể dùng cờ này để định cấu hình một socket miền Unix (unix:/path/to/socket).
--bes_results_url=<a string>
mặc định: ""-
Chỉ định URL cơ sở nơi người dùng có thể xem thông tin được truyền trực tuyến đến phụ trợ BES. Bazel sẽ xuất URL được nối thêm bằng mã nhận dạng lệnh gọi vào thiết bị đầu cuối.
Thẻ:terminal_output
--bes_system_keywords=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Chỉ định danh sách các từ khoá thông báo được đưa vào trực tiếp, không có tiền tố "user_keyword=" cho các từ khoá được cung cấp thông qua --bes_keywords. Dành cho những nhà điều hành dịch vụ Build đặt --bes_lifecycle_events=false và thêm từ khoá khi gọi PublishLifecycleEvent. Các toán tử dịch vụ bản dựng sử dụng cờ này phải ngăn người dùng ghi đè giá trị cờ.
Thẻ:affects_outputs
--bes_timeout=<An immutable length of time.>
mặc định: "0s"-
Chỉ định thời gian bazel nên đợi quá trình tải BES/BEP lên hoàn tất sau khi quá trình tạo và kiểm thử kết thúc. Thời gian chờ hợp lệ là một số tự nhiên, theo sau là một đơn vị: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Giá trị mặc định là "0", tức là không có thời gian chờ.
Thẻ:affects_outputs
--bes_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async>
mặc định: "wait_for_upload_complete"-
Chỉ định xem quá trình tải lên Build Event Service có chặn quá trình hoàn tất bản dựng hay không, hoặc có kết thúc lệnh gọi ngay lập tức và hoàn tất quá trình tải lên ở chế độ nền hay không. Có thể là "wait_for_upload_complete" (mặc định), "nowait_for_upload_complete" hoặc "fully_async".
Thẻ:eagerness_to_exit
--build_event_binary_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi một biểu thị nhị phân được phân tách bằng varint của biểu thị của giao thức sự kiện bản dựng vào tệp đó. Lựa chọn này ngụ ý --bes_upload_mode=wait_for_upload_complete.
Thẻ:affects_outputs
--[no]build_event_binary_file_path_conversion
mặc định: "true"-
Chuyển đổi các đường dẫn trong biểu thị tệp nhị phân của giao thức sự kiện bản dựng thành các URI hợp lệ hơn trên toàn cầu bất cứ khi nào có thể; nếu bị vô hiệu hoá, lược đồ uri file:// sẽ luôn được sử dụng
Thẻ:affects_outputs
--build_event_binary_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async>
mặc định: "wait_for_upload_complete"-
Chỉ định xem quá trình tải Build Event Service lên cho --build_event_binary_file có nên chặn quá trình hoàn tất bản dựng hay nên kết thúc lệnh gọi ngay lập tức và hoàn tất quá trình tải lên ở chế độ nền. Có thể là "wait_for_upload_complete" (mặc định), "nowait_for_upload_complete" hoặc "fully_async".
Thẻ:eagerness_to_exit
--build_event_json_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi một quá trình chuyển đổi tuần tự JSON của giao thức sự kiện bản dựng vào tệp đó. Lựa chọn này ngụ ý --bes_upload_mode=wait_for_upload_complete.
Thẻ:affects_outputs
--[no]build_event_json_file_path_conversion
mặc định: "true"-
Chuyển đổi các đường dẫn trong biểu thị tệp json của giao thức sự kiện bản dựng thành các URI hợp lệ hơn trên toàn cầu bất cứ khi nào có thể; nếu bị vô hiệu hoá, lược đồ uri file:// sẽ luôn được sử dụng
Thẻ:affects_outputs
--build_event_json_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async>
mặc định: "wait_for_upload_complete"-
Chỉ định xem quá trình tải Build Event Service lên cho --build_event_json_file có nên chặn quá trình hoàn tất bản dựng hay nên kết thúc lệnh gọi ngay lập tức và hoàn tất quá trình tải lên ở chế độ nền. Có thể là "wait_for_upload_complete" (mặc định), "nowait_for_upload_complete" hoặc "fully_async".
Thẻ:eagerness_to_exit
--build_event_max_named_set_of_file_entries=<an integer>
mặc định: "5000"-
Số lượng mục tối đa cho một sự kiện named_set_of_files; các giá trị nhỏ hơn 2 sẽ bị bỏ qua và không có sự kiện nào được phân tách. Mục đích của tham số này là giới hạn kích thước tối đa của sự kiện trong giao thức sự kiện bản dựng, mặc dù tham số này không trực tiếp kiểm soát kích thước sự kiện. Tổng kích thước sự kiện là một hàm của cấu trúc tập hợp cũng như độ dài của tệp và uri, có thể phụ thuộc vào hàm băm.
Thẻ:affects_outputs
--[no]build_event_publish_all_actions
mặc định: "false"-
Có nên xuất bản tất cả các hành động hay không.
Thẻ:affects_outputs
--build_event_text_file=<a string>
mặc định: ""-
Nếu không có giá trị rỗng, hãy ghi nội dung biểu thị bằng văn bản của giao thức sự kiện bản dựng vào tệp đó
Thẻ:affects_outputs
--[no]build_event_text_file_path_conversion
mặc định: "true"-
Chuyển đổi các đường dẫn trong biểu thị tệp văn bản của giao thức sự kiện bản dựng thành các URI hợp lệ hơn trên toàn cầu bất cứ khi nào có thể; nếu bị vô hiệu hoá, lược đồ uri file:// sẽ luôn được sử dụng
Thẻ:affects_outputs
--build_event_text_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async>
mặc định: "wait_for_upload_complete"-
Chỉ định xem quá trình tải Build Event Service lên cho --build_event_text_file có chặn quá trình hoàn tất bản dựng hay không, hoặc có kết thúc lệnh gọi ngay lập tức và hoàn tất quá trình tải lên ở chế độ nền hay không. Có thể là "wait_for_upload_complete" (mặc định), "nowait_for_upload_complete" hoặc "fully_async".
Thẻ:eagerness_to_exit
--build_event_upload_max_retries=<an integer>
mặc định: "4"-
Số lần tối đa mà Bazel nên thử tải một sự kiện bản dựng lên.
Thẻ:bazel_internal_configuration
--[no]experimental_bep_target_summary
mặc định: "false"- Có xuất bản sự kiện TargetSummary hay không.
--[no]experimental_build_event_expand_filesets
mặc định: "false"-
Nếu đúng, hãy mở rộng Filesets trong BEP khi trình bày các tệp đầu ra.
Thẻ:affects_outputs
--[no]experimental_build_event_fully_resolve_fileset_symlinks
mặc định: "false"-
Nếu đúng, hãy phân giải hoàn toàn các đường liên kết tượng trưng Fileset tương đối trong BEP khi trình bày các tệp đầu ra. Yêu cầu --experimental_build_event_expand_filesets.
Thẻ:affects_outputs
--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định cách các tệp của nhóm đầu ra sẽ được biểu thị trong các sự kiện BEP TargetComplete/AspectComplete. Giá trị là việc chỉ định tên nhóm đầu ra cho một trong các giá trị "NAMED_SET_OF_FILES_ONLY", "INLINE_ONLY" hoặc "BOTH". Giá trị mặc định là "NAMED_SET_OF_FILES_ONLY". Nếu một nhóm đầu ra được lặp lại, giá trị cuối cùng xuất hiện sẽ được sử dụng. Giá trị mặc định đặt chế độ cho các cấu phần phần mềm về mức độ phù hợp thành BOTH: --experimental_build_event_output_group_mode=baseline.lcov=both
Các thẻ:affects_outputs
--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.>
mặc định: "1 giây"-
Độ trễ ban đầu, tối thiểu cho các lần thử lại theo cơ chế thời gian đợi luỹ thừa khi quá trình tải lên BEP không thành công. (số mũ: 1,6)
Thẻ:bazel_internal_configuration
--experimental_build_event_upload_strategy=<a string>
mặc định: xem nội dung mô tả-
Chọn cách tải các cấu phần phần mềm được tham chiếu trong giao thức sự kiện bản dựng lên.
Thẻ:affects_outputs
--[no]experimental_collect_load_average_in_profiler
mặc định: "true"-
Nếu được bật, trình phân tích tài nguyên sẽ thu thập mức tải trung bình tổng thể của hệ thống.
Thẻ:bazel_monitoring
--[no]experimental_collect_pressure_stall_indicators
mặc định: "false"-
Nếu được bật, trình phân tích tài nguyên sẽ thu thập dữ liệu PSI của Linux.
Thẻ:bazel_monitoring
--[no]experimental_collect_resource_estimation
mặc định: "false"-
Nếu được bật, trình phân tích sẽ thu thập thông tin ước tính về mức sử dụng CPU và bộ nhớ cho các thao tác cục bộ.
Thẻ:bazel_monitoring
--[no]experimental_collect_skyframe_counts_in_profiler
mặc định: "false"-
Nếu được bật, trình phân tích tài nguyên sẽ thu thập số lượng SkyFunction trong biểu đồ Skyframe theo thời gian cho các loại hàm chính, chẳng hạn như các mục tiêu đã định cấu hình và việc thực thi hành động. Có thể ảnh hưởng đến hiệu suất vì thao tác này sẽ truy cập vào TOÀN BỘ biểu đồ Skyframe tại mọi đơn vị thời gian lập hồ sơ. Không dùng cờ này với các phép đo quan trọng về hiệu suất.
Thẻ:bazel_monitoring
--[no]experimental_collect_system_network_usage
mặc định: "true"-
Nếu được bật, trình phân tích tài nguyên sẽ thu thập mức sử dụng mạng của hệ thống.
Thẻ:bazel_monitoring
--[no]experimental_collect_worker_data_in_profiler
mặc định: "false"-
Nếu được bật, trình phân tích tài nguyên sẽ thu thập dữ liệu tài nguyên tổng hợp của worker.
Thẻ:bazel_monitoring
--experimental_command_profile=<cpu, wall, alloc or lock>
mặc định: xem nội dung mô tả- Ghi lại hồ sơ Java Flight Recorder trong thời gian chạy lệnh. Bạn phải cung cấp một trong các loại sự kiện lập hồ sơ được hỗ trợ (cpu, wall, alloc hoặc lock) làm đối số. Hồ sơ được ghi vào một tệp có tên theo loại sự kiện trong thư mục cơ sở đầu ra. Cú pháp và ngữ nghĩa của cờ này có thể thay đổi trong tương lai để hỗ trợ các loại hồ sơ hoặc định dạng đầu ra khác; bạn tự chịu rủi ro khi sử dụng.
--experimental_profile_additional_tasks=<phase, action, discover_inputs, action_check, action_lock, action_update, action_complete, action_rewinding, bzlmod, info, create_package, remote_execution, local_execution, scanner, local_parse, upload_time, remote_process_time, remote_queue, remote_setup, fetch, local_process_time, vfs_stat, vfs_dir, vfs_readlink, vfs_md5, vfs_xattr, vfs_delete, vfs_open, vfs_read, vfs_write, vfs_glob, vfs_vmfs_stat, vfs_vmfs_dir, vfs_vmfs_read, wait, thread_name, thread_sort_index, skyframe_eval, skyfunction, critical_path, critical_path_component, handle_gc_notification, local_action_counts, starlark_parser, starlark_user_fn, starlark_builtin_fn, starlark_user_compiled_fn, starlark_repository_fn, action_fs_staging, remote_cache_check, remote_download, remote_network, filesystem_traversal, worker_execution, worker_setup, worker_borrow, worker_working, worker_copying_outputs, credential_helper, conflict_check, dynamic_lock, repository_fetch, repository_vendor or unknown>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các tác vụ bổ sung của hồ sơ cần đưa vào hồ sơ.
Thẻ:bazel_monitoring
--[no]experimental_profile_include_primary_output
mặc định: "false"-
Bao gồm thuộc tính "out" bổ sung trong các sự kiện hành động chứa đường dẫn thực thi đến đầu ra chính của hành động.
Thẻ:bazel_monitoring
--[no]experimental_profile_include_target_configuration
mặc định: "false"-
Bao gồm hàm băm cấu hình mục tiêu trong dữ liệu hồ sơ JSON của các sự kiện thao tác.
Thẻ:bazel_monitoring
--[no]experimental_profile_include_target_label
mặc định: "false"-
Bao gồm nhãn mục tiêu trong dữ liệu hồ sơ JSON của các sự kiện thao tác.
Thẻ:bazel_monitoring
--[no]experimental_record_metrics_for_all_mnemonics
mặc định: "false"- Kiểm soát đầu ra của BEP ActionSummary và BuildGraphMetrics, giới hạn số lượng từ viết tắt trong ActionData và số lượng mục được báo cáo trong BuildGraphMetrics.AspectCount/RuleClassCount. Theo mặc định, số lượng loại được giới hạn ở 20 loại hàng đầu, theo số lượng thao tác đã thực hiện cho ActionData và số lượng phiên bản cho RuleClass và Asepcts. Khi bạn đặt lựa chọn này, hệ thống sẽ ghi số liệu thống kê cho tất cả các từ gợi nhớ, lớp quy tắc và khía cạnh.
--[no]experimental_record_skyframe_metrics
mặc định: "false"- Kiểm soát đầu ra của BEP BuildGraphMetrics, bao gồm cả các chỉ số skyframe tốn kém để tính toán về Skykeys, RuleClasses và Aspects.Nếu bạn đặt cờ này thành false, BuildGraphMetrics.rule_count và aspectfields sẽ không được điền sẵn trong BEP.
--[no]experimental_run_bep_event_include_residue
mặc định: "false"-
Có nên đưa phần còn lại của dòng lệnh vào các sự kiện chạy bản dựng có thể chứa phần còn lại đó hay không. Theo mặc định, phần dư không được đưa vào các sự kiện tạo lệnh chạy có thể chứa phần dư.
Thẻ:affects_outputs
--[no]experimental_stream_log_file_uploads
mặc định: "false"-
Truyền trực tuyến các tệp nhật ký được tải lên trực tiếp vào bộ nhớ từ xa thay vì ghi chúng vào ổ đĩa.
Thẻ:affects_outputs
--experimental_workspace_rules_log_file=<a path>
mặc định: xem nội dung mô tả- Ghi lại một số sự kiện nhất định của Quy tắc Workspace vào tệp này dưới dạng các proto WorkspaceEvent được phân tách.
--[no]generate_json_trace_profile
mặc định: "auto"-
Nếu được bật, Bazel sẽ lập hồ sơ bản dựng và ghi hồ sơ ở định dạng JSON vào một tệp trong cơ sở đầu ra. Xem hồ sơ bằng cách tải vào chrome://tracing. Theo mặc định, Bazel sẽ ghi hồ sơ cho tất cả các lệnh và truy vấn giống như lệnh tạo.
Thẻ:bazel_monitoring
--[no]heap_dump_on_oom
mặc định: "false"-
Có xuất kết xuất heap theo cách thủ công hay không nếu một OOM được truyền (bao gồm cả OOM thủ công do đạt đến --gc_thrashing_limits). Tệp kết xuất sẽ được ghi vào <output_base>/<invocation_id>.heapdump.hprof. Tuỳ chọn này thay thế hiệu quả -XX:+HeapDumpOnOutOfMemoryError, không có hiệu lực đối với các OOM thủ công.
Thẻ:bazel_monitoring
--jvm_heap_histogram_internal_object_pattern=<a valid Java regular expression>
mặc định: "jdk\.internal\.vm\.Filler.+"- Biểu thức chính quy để ghi đè logic so khớp cho hoạt động thu thập bộ nhớ vùng nhớ xếp JVM JDK21+. Chúng tôi đang dựa vào thông tin chi tiết về việc triển khai G1 GC nội bộ không ổn định để có được chỉ số bộ nhớ rõ ràng. Lựa chọn này cho phép chúng tôi thích ứng với những thay đổi trong quá trình triển khai nội bộ đó mà không cần phải đợi bản phát hành nhị phân. Truyền đến JDK Matcher.find()
--[no]legacy_important_outputs
mặc định: "false"-
Sử dụng tuỳ chọn này để ngăn chặn việc tạo trường important_outputs cũ trong sự kiện TargetComplete. Bazel cần có important_outputs để tích hợp ResultStore/BTX.
Thẻ:affects_outputs
--logging=<0 <= an integer <= 6>
mặc định: "3"-
Cấp độ ghi nhật ký.
Thẻ:affects_outputs
--memory_profile=<a path>
mặc định: xem nội dung mô tả- Nếu được đặt, hãy ghi dữ liệu sử dụng bộ nhớ vào tệp đã chỉ định ở cuối giai đoạn và đống ổn định vào nhật ký chính ở cuối bản dựng.
Thẻ:bazel_monitoring
--memory_profile_stable_heap_parameters=<integers, separated by a comma expected in pairs>
mặc định: "1,0"-
Điều chỉnh việc tính toán vùng nhớ khối xếp ổn định của hồ sơ bộ nhớ ở cuối bản dựng. Phải là số chẵn của các số nguyên được phân tách bằng dấu phẩy. Trong mỗi cặp, số nguyên đầu tiên là số lượng GC cần thực hiện. Số nguyên thứ hai trong mỗi cặp là số giây chờ giữa các lần thu gom rác. Ví dụ: 2,4,4,0 sẽ có 2 GC với thời gian tạm dừng là 4 giây, tiếp theo là 4 GC với thời gian tạm dừng là 0 giây
Thẻ:bazel_monitoring
--profile=<a path>
mặc định: xem nội dung mô tả-
Nếu được đặt, hãy lập hồ sơ Bazel và ghi dữ liệu vào tệp được chỉ định. Sử dụng bazel analyze-profile để phân tích hồ sơ.
Thẻ:bazel_monitoring
--profiles_to_retain=<an integer>
mặc định: "5"-
Số lượng hồ sơ cần giữ lại trong cơ sở đầu ra. Nếu có nhiều hồ sơ hơn số này trong cơ sở đầu ra, thì các hồ sơ cũ nhất sẽ bị xoá cho đến khi tổng số hồ sơ dưới hạn mức.
Thẻ:bazel_monitoring
--[no]record_full_profiler_data
mặc định: "false"-
Theo mặc định, trình phân tích tài nguyên Bazel sẽ chỉ ghi lại dữ liệu tổng hợp cho các sự kiện diễn ra nhanh nhưng có số lượng lớn (chẳng hạn như thống kê tệp). Nếu bạn bật lựa chọn này, trình phân tích tài nguyên sẽ ghi lại từng sự kiện, dẫn đến dữ liệu phân tích tài nguyên chính xác hơn nhưng ảnh hưởng LỚN đến hiệu suất. Tuỳ chọn này chỉ có hiệu lực nếu bạn cũng sử dụng --profile.
Thẻ:bazel_monitoring
--[no]redirect_local_instrumentation_output_writes
mặc định: "false"-
Nếu đúng và được hỗ trợ, đầu ra đo lường sẽ được chuyển hướng để ghi cục bộ trên một máy khác với máy đang chạy bazel.
Thẻ:bazel_monitoring
--remote_print_execution_messages=<failure, success or all>
mặc định: "failure"-
Chọn thời điểm in thông báo thực thi từ xa. Các giá trị hợp lệ là "failure" (lỗi) để chỉ in khi có lỗi, "success" (thành công) để chỉ in khi thành công và "all" (tất cả) để luôn in.
Thẻ:terminal_output
--[no]slim_profile
mặc định: "true"-
Giảm kích thước của hồ sơ JSON bằng cách hợp nhất các sự kiện nếu hồ sơ quá lớn.
Thẻ:bazel_monitoring
--starlark_cpu_profile=<a string>
mặc định: ""-
Ghi vào tệp được chỉ định một hồ sơ pprof về mức sử dụng CPU của tất cả các luồng Starlark.
Thẻ:bazel_monitoring
--tool_tag=<a string>
mặc định: ""-
Tên công cụ để gán lệnh gọi Bazel này.
Thẻ:affects_outputs
,bazel_monitoring
--ui_event_filters=<Convert list of comma separated event kind to list of filters>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định những sự kiện cần hiển thị trong giao diện người dùng. Bạn có thể thêm hoặc xoá các sự kiện vào các sự kiện mặc định bằng cách sử dụng dấu +/- ở đầu hoặc ghi đè hoàn toàn bộ sự kiện mặc định bằng cách chỉ định trực tiếp. Tập hợp các loại sự kiện được hỗ trợ bao gồm INFO, DEBUG, ERROR và nhiều loại khác.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--experimental_resolved_file_instead_of_workspace=<a string>
mặc định: ""-
Nếu không trống, hãy đọc tệp đã phân giải được chỉ định thay vì tệp WORKSPACE
Thẻ:changes_inputs
- Các lựa chọn thực thi và lưu vào bộ nhớ đệm từ xa:
--experimental_circuit_breaker_strategy=<failure>
mặc định: xem nội dung mô tả-
Chỉ định chiến lược mà cầu dao sẽ sử dụng. Các chiến lược có thể sử dụng là "failure". Khi giá trị không hợp lệ cho lựa chọn, hành vi sẽ giống như khi lựa chọn không được đặt.
Thẻ:execution
--experimental_downloader_config=<a string>
mặc định: xem nội dung mô tả- Chỉ định một tệp để định cấu hình trình tải xuống từ xa. Tệp này bao gồm các dòng, mỗi dòng bắt đầu bằng một chỉ thị ("allow", "block" hoặc "rewrite") theo sau là tên máy chủ (đối với "allow" và "block") hoặc hai mẫu, một mẫu để so khớp và một mẫu để dùng làm URL thay thế, với các tham chiếu ngược bắt đầu từ "$1". Có thể có nhiều chỉ thị "rewrite" cho cùng một URL và trong trường hợp này, nhiều URL sẽ được trả về.
--[no]experimental_guard_against_concurrent_changes
mặc định: "false"- Tắt tuỳ chọn này để vô hiệu hoá việc kiểm tra ctime của các tệp đầu vào của một thao tác trước khi tải tệp đó lên bộ nhớ đệm từ xa. Có thể xảy ra trường hợp nhân Linux trì hoãn việc ghi tệp, điều này có thể gây ra kết quả dương tính giả.
--experimental_remote_cache_compression_threshold=<an integer>
mặc định: "100"- Kích thước blob tối thiểu cần thiết để nén/giải nén bằng zstd. Không có hiệu quả trừ phi bạn đặt --remote_cache_compression.
--[no]experimental_remote_cache_lease_extension
mặc định: "false"- Nếu bạn đặt thành true, Bazel sẽ gia hạn thời gian thuê cho các đầu ra của thao tác từ xa trong quá trình tạo bằng cách định kỳ gửi lệnh gọi "FindMissingBlobs" đến bộ nhớ đệm từ xa. Tần suất dựa trên giá trị của `--experimental_remote_cache_ttl`.
--experimental_remote_cache_ttl=<An immutable length of time.>
mặc định: "3h"-
TTL tối thiểu được đảm bảo của các blob trong bộ nhớ đệm từ xa sau khi các bản tóm tắt của chúng được tham chiếu gần đây, ví dụ: bằng ActionResult hoặc FindMissingBlobs. Bazel thực hiện một số hoạt động tối ưu hoá dựa trên TTL của các blob, chẳng hạn như không gọi GetActionResult nhiều lần trong một bản dựng gia tăng. Giá trị này phải được đặt nhỏ hơn một chút so với TTL thực tế vì có một khoảng trống giữa thời điểm máy chủ trả về các bản tóm tắt và thời điểm Bazel nhận được các bản tóm tắt đó.
Thẻ:execution
--experimental_remote_capture_corrupted_outputs=<a path>
mặc định: xem nội dung mô tả- Đường dẫn đến một thư mục nơi các đầu ra bị hỏng sẽ được ghi lại.
--[no]experimental_remote_discard_merkle_trees
mặc định: "true"- Nếu được đặt thành true, hãy loại bỏ các bản sao trong bộ nhớ của cây Merkle của gốc đầu vào và các ánh xạ đầu vào được liên kết trong các lệnh gọi đến GetActionResult() và Execute(). Việc này giúp giảm đáng kể mức sử dụng bộ nhớ, nhưng yêu cầu Bazel tính toán lại các bản sao đó khi bộ nhớ đệm từ xa bị lỗi và khi thử lại.
--experimental_remote_downloader=<a string>
mặc định: xem nội dung mô tả- URI điểm cuối của Remote Asset API, được dùng làm proxy tải xuống từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Xem tại: https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto
--[no]experimental_remote_downloader_local_fallback
mặc định: "false"- Có quay lại trình tải xuống cục bộ hay không nếu trình tải xuống từ xa không thành công.
--[no]experimental_remote_downloader_propagate_credentials
mặc định: "false"- Có truyền thông tin đăng nhập từ netrc và trình trợ giúp thông tin đăng nhập đến máy chủ trình tải xuống từ xa hay không. Phương thức triển khai máy chủ cần hỗ trợ bộ đủ tiêu chuẩn `http_header_url:<url-index>:<header-key>` mới, trong đó `<url-index>` là vị trí dựa trên 0 của URL bên trong trường `uris` của FetchBlobRequest. Tiêu đề dành riêng cho URL sẽ được ưu tiên hơn tiêu đề chung.
--[no]experimental_remote_execution_keepalive
mặc định: "false"- Có nên sử dụng keepalive cho các lệnh gọi thực thi từ xa hay không.
--experimental_remote_failure_rate_threshold=<an integer in 0-100 range>
mặc định: "10"-
Đặt số lượng tỷ lệ lỗi được phép theo tỷ lệ phần trăm cho một khoảng thời gian cụ thể, sau đó, tỷ lệ này sẽ ngừng gọi vào bộ nhớ đệm/trình thực thi từ xa. Theo mặc định, giá trị này là 10. Đặt giá trị này thành 0 nghĩa là không có giới hạn.
Thẻ:execution
--experimental_remote_failure_window_interval=<An immutable length of time.>
mặc định: "60 giây"-
Khoảng thời gian mà hệ thống tính toán tỷ lệ yêu cầu từ xa không thành công. Nếu giá trị bằng 0 hoặc âm, thời gian thất bại sẽ được tính là toàn bộ thời gian thực thi.Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
Thẻ:execution
--[no]experimental_remote_mark_tool_inputs
mặc định: "false"- Nếu bạn đặt thành true, Bazel sẽ đánh dấu các đầu vào là đầu vào công cụ cho trình thực thi từ xa. Bạn có thể dùng tính năng này để triển khai các worker liên tục từ xa.
--[no]experimental_remote_merkle_tree_cache
mặc định: "false"- Nếu bạn đặt thành true, các phép tính cây Merkle sẽ được ghi nhớ để cải thiện tốc độ kiểm tra lượt truy cập bộ nhớ đệm từ xa. Mức sử dụng bộ nhớ của bộ nhớ đệm được kiểm soát bằng --experimental_remote_merkle_tree_cache_size.
--experimental_remote_merkle_tree_cache_size=<a long integer>
mặc định: "1000"- Số lượng cây Merkle cần ghi nhớ để cải thiện tốc độ kiểm tra lượt truy cập bộ nhớ đệm từ xa. Mặc dù bộ nhớ đệm được cắt bớt tự động theo cách xử lý các tham chiếu mềm của Java, nhưng lỗi hết bộ nhớ có thể xảy ra nếu bạn đặt giá trị quá cao. Nếu bạn đặt thành 0, kích thước bộ nhớ đệm sẽ không bị giới hạn. Giá trị tối ưu sẽ khác nhau tuỳ thuộc vào quy mô của dự án. Giá trị mặc định là 1000.
--experimental_remote_output_service=<a string>
mặc định: xem nội dung mô tả- HOST hoặc HOST:PORT của một điểm cuối dịch vụ đầu ra từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định giản đồ grpc:// hoặc unix: để tắt TLS.
--experimental_remote_output_service_output_path_prefix=<a string>
mặc định: ""- Đường dẫn mà nội dung của các thư mục đầu ra do --experimental_remote_output_service quản lý được đặt. Thư mục đầu ra thực tế mà bản dựng sử dụng sẽ là một thư mục con của đường dẫn này và do dịch vụ đầu ra xác định.
--[no]experimental_remote_require_cached
mặc định: "false"- Nếu được đặt thành true, hãy thực thi tất cả các thao tác có thể chạy từ xa được lưu vào bộ nhớ đệm, nếu không, bản dựng sẽ không thành công. Điều này hữu ích trong việc khắc phục các vấn đề về tính không xác định vì nó cho phép kiểm tra xem những hành động cần được lưu vào bộ nhớ đệm có thực sự được lưu vào bộ nhớ đệm hay không mà không cần phải chèn các kết quả mới một cách giả tạo vào bộ nhớ đệm.
--experimental_remote_scrubbing_config=<Converts to a Scrubber>
mặc định: xem nội dung mô tả- Cho phép dọn dẹp khoá bộ nhớ đệm từ xa bằng tệp cấu hình được cung cấp. Tệp này phải là một vùng đệm giao thức ở định dạng văn bản (xem src/main/protobuf/remote_scrubbing.proto). Tính năng này nhằm mục đích tạo điều kiện chia sẻ bộ nhớ đệm từ xa/trên đĩa giữa các thao tác thực thi trên nhiều nền tảng nhưng nhắm đến cùng một nền tảng. Bạn nên sử dụng tính năng này một cách thận trọng vì chế độ cài đặt không phù hợp có thể khiến các mục trong bộ nhớ đệm bị chia sẻ nhầm và dẫn đến các bản dựng không chính xác. Việc dọn dẹp không ảnh hưởng đến cách thực thi một thao tác, mà chỉ ảnh hưởng đến cách tính khoá bộ nhớ đệm từ xa/trên đĩa cho mục đích truy xuất hoặc lưu trữ kết quả của thao tác. Các thao tác đã được dọn dẹp không tương thích với việc thực thi từ xa và sẽ luôn được thực thi cục bộ. Việc sửa đổi cấu hình dọn dẹp không làm mất hiệu lực các đầu ra có trong hệ thống tệp cục bộ hoặc bộ nhớ đệm nội bộ; bạn cần có một bản dựng sạch để thực thi lại các thao tác bị ảnh hưởng. Để sử dụng thành công tính năng này, bạn nên đặt một --host_platform tuỳ chỉnh cùng với --experimental_platform_in_output_dir (để chuẩn hoá tiền tố đầu ra) và --incompatible_strict_action_env (để chuẩn hoá các biến môi trường).
--experimental_worker_for_repo_fetching=<off, platform, virtual or auto>
mặc định: "auto"- Chế độ phân luồng dùng để tìm nạp kho lưu trữ. Nếu bạn đặt thành "tắt", thì sẽ không có luồng worker nào được dùng và quá trình tìm nạp kho lưu trữ có thể phải khởi động lại. Nếu không, hãy sử dụng một luồng worker ảo.
--[no]remote_accept_cached
mặc định: "true"- Có chấp nhận kết quả của thao tác được lưu vào bộ nhớ đệm từ xa hay không.
--remote_build_event_upload=<all or minimal>
mặc định: "minimal"- Nếu được đặt thành "all", tất cả đầu ra cục bộ mà BEP tham chiếu sẽ được tải lên bộ nhớ đệm từ xa. Nếu bạn đặt thành "tối thiểu", thì các đầu ra cục bộ mà BEP tham chiếu sẽ không được tải lên bộ nhớ đệm từ xa, ngoại trừ những tệp quan trọng đối với người dùng BEP (ví dụ: nhật ký kiểm thử và hồ sơ thời gian). Lược đồ bytestream:// luôn được dùng cho URI của các tệp ngay cả khi chúng bị thiếu trong bộ nhớ đệm từ xa. Mặc định là "minimal".
--remote_bytestream_uri_prefix=<a string>
mặc định: xem nội dung mô tả- Tên máy chủ và tên phiên bản sẽ được dùng trong URI bytestream:// được ghi vào luồng sự kiện bản dựng. Bạn có thể đặt lựa chọn này khi thực hiện các bản dựng bằng một proxy, khiến các giá trị của --remote_executor và --remote_instance_name không còn tương ứng với tên chuẩn của dịch vụ thực thi từ xa. Khi không được đặt, giá trị này sẽ mặc định là "${hostname}/${instance_name}".
--remote_cache=<a string>
mặc định: xem nội dung mô tả- URI của một điểm cuối lưu vào bộ nhớ đệm. Các giản đồ được hỗ trợ là http, https, grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định lược đồ grpc://, http:// hoặc unix: để tắt TLS. Xem https://bazel.build/remote/caching
--[no]remote_cache_async
mặc định: "true"- Nếu đặt là true, quá trình tải kết quả của thao tác lên đĩa hoặc bộ nhớ đệm từ xa sẽ diễn ra ở chế độ nền thay vì chặn quá trình hoàn tất một thao tác. Một số thao tác không tương thích với tính năng tải lên trong nền và vẫn có thể chặn ngay cả khi bạn đặt cờ này.
--[no]remote_cache_compression
mặc định: "false"- Nếu được bật, hãy nén/giải nén các blob trong bộ nhớ đệm bằng zstd khi kích thước của chúng ít nhất là --experimental_remote_cache_compression_threshold.
--remote_cache_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định tiêu đề sẽ được đưa vào các yêu cầu bộ nhớ đệm: --remote_cache_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_default_exec_properties=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Đặt các thuộc tính exec mặc định sẽ được dùng làm nền tảng thực thi từ xa nếu nền tảng thực thi chưa đặt exec_properties.
Thẻ:affects_outputs
--remote_default_platform_properties=<a string>
mặc định: ""- Đặt các thuộc tính nền tảng mặc định sẽ được đặt cho API thực thi từ xa, nếu nền tảng thực thi chưa đặt remote_execution_properties. Giá trị này cũng sẽ được dùng nếu nền tảng lưu trữ được chọn làm nền tảng thực thi cho hoạt động thực thi từ xa.
--remote_download_regex=<a valid Java regular expression>
nhiều mục đích sử dụng được tích luỹ-
Buộc tải các đầu ra của bản dựng từ xa có đường dẫn khớp với mẫu này xuống, bất kể --remote_download_outputs. Bạn có thể chỉ định nhiều mẫu bằng cách lặp lại cờ này.
Thẻ:affects_outputs
--remote_downloader_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định một tiêu đề sẽ được đưa vào các yêu cầu của trình tải xuống từ xa: --remote_downloader_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_exec_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định tiêu đề sẽ được đưa vào các yêu cầu thực thi: --remote_exec_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_execution_priority=<an integer>
mặc định: "0"- Mức độ ưu tiên tương đối của các thao tác sẽ được thực thi từ xa. Ngữ nghĩa của các giá trị ưu tiên cụ thể phụ thuộc vào máy chủ.
--remote_executor=<a string>
mặc định: xem nội dung mô tả- HOST hoặc HOST:PORT của một điểm cuối thực thi từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định giản đồ grpc:// hoặc unix: để tắt TLS.
--remote_grpc_log=<a path>
mặc định: xem nội dung mô tả- Nếu được chỉ định, đây là đường dẫn đến một tệp để ghi lại các thông tin chi tiết liên quan đến lệnh gọi gRPC. Nhật ký này bao gồm một chuỗi các protobuf com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry được chuyển đổi tuần tự, trong đó mỗi thông báo được bắt đầu bằng một varint biểu thị kích thước của thông báo protobuf được chuyển đổi tuần tự sau đây, như được thực hiện bằng phương thức LogEntry.writeDelimitedTo(OutputStream).
--remote_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định một tiêu đề sẽ được đưa vào các yêu cầu: --remote_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_instance_name=<a string>
mặc định: ""- Giá trị cần truyền dưới dạng instance_name trong API thực thi từ xa.
--[no]remote_local_fallback
mặc định: "false"- Có quay lại chiến lược thực thi cục bộ độc lập hay không nếu quá trình thực thi từ xa không thành công.
--remote_local_fallback_strategy=<a string>
mặc định: "local"- Không dùng nữa. Hãy xem https://github.com/bazelbuild/bazel/issues/7480 để biết thông tin chi tiết.
--remote_max_connections=<an integer>
mặc định: "100"-
Giới hạn số lượng tối đa các kết nối đồng thời đến bộ nhớ đệm/trình thực thi từ xa. Theo mặc định, giá trị này là 100. Đặt giá trị này thành 0 nghĩa là không có giới hạn.
Đối với bộ nhớ đệm từ xa HTTP, một kết nối TCP có thể xử lý một yêu cầu tại một thời điểm, vì vậy Bazel có thể thực hiện tối đa --remote_max_connections yêu cầu đồng thời.
Đối với bộ nhớ đệm/trình thực thi từ xa gRPC, một kênh gRPC thường có thể xử lý hơn 100 yêu cầu đồng thời, vì vậy Bazel có thể thực hiện khoảng `--remote_max_connections * 100` yêu cầu đồng thời.
Thẻ:host_machine_resource_optimizations
--remote_proxy=<a string>
mặc định: xem nội dung mô tả- Kết nối với bộ nhớ đệm từ xa thông qua một proxy. Hiện tại, bạn chỉ có thể dùng cờ này để định cấu hình một socket miền Unix (unix:/path/to/socket).
--remote_result_cache_priority=<an integer>
mặc định: "0"- Mức độ ưu tiên tương đối của các thao tác từ xa sẽ được lưu trữ trong bộ nhớ đệm từ xa. Ngữ nghĩa của các giá trị ưu tiên cụ thể phụ thuộc vào máy chủ.
--remote_retries=<an integer>
mặc định: "5"- Số lần thử lại tối đa đối với một lỗi tạm thời. Nếu bạn đặt thành 0, thì các lần thử lại sẽ bị vô hiệu hoá.
--remote_retry_max_delay=<An immutable length of time.>
mặc định: "5 giây"- Độ trễ tối đa khi thử lại từ xa. Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
--remote_timeout=<An immutable length of time.>
mặc định: "60 giây"- Khoảng thời gian tối đa để chờ thực thi từ xa và gọi bộ nhớ đệm. Đối với bộ nhớ đệm REST, đây là cả thời gian chờ kết nối và thời gian chờ đọc. Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
--[no]remote_upload_local_results
mặc định: "true"- Có tải kết quả của thao tác được thực thi cục bộ lên bộ nhớ đệm từ xa hay không nếu bộ nhớ đệm từ xa hỗ trợ thao tác đó và người dùng được phép làm như vậy.
--[no]remote_verify_downloads
mặc định: "true"- Nếu được đặt thành true, Bazel sẽ tính tổng băm của tất cả các lượt tải xuống từ xa và loại bỏ các giá trị được lưu vào bộ nhớ đệm từ xa nếu chúng không khớp với giá trị dự kiến.
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--build_metadata=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Cặp chuỗi khoá-giá trị tuỳ chỉnh để cung cấp trong một sự kiện bản dựng.
Thẻ:terminal_output
--color=<yes, no or auto>
mặc định: "auto"- Sử dụng các chế độ điều khiển của thiết bị đầu cuối để tô màu đầu ra.
--config=<a string>
nhiều mục đích sử dụng được tích luỹ- Chọn các phần cấu hình bổ sung trong tệp rc; đối với mỗi <command>, nó cũng kéo các lựa chọn từ <command>:<config> nếu có phần như vậy; nếu phần này không tồn tại trong bất kỳ tệp .rc nào, Blaze sẽ gặp lỗi. Các tổ hợp cờ và phần cấu hình tương đương nằm trong tệp cấu hình tools/*.blazerc.
--credential_helper=<Path to a credential helper. It may be absolute, relative to the PATH environment variable, or %workspace%-relative. The path be optionally prefixed by a scope followed by an '='. The scope is a domain name, optionally with a single leading '*' wildcard component. A helper applies to URIs matching its scope, with more specific scopes preferred. If a helper has no scope, it applies to every URI.>
nhiều mục đích sử dụng được tích luỹ- Định cấu hình một trình trợ giúp thông tin đăng nhập tuân thủ <a href="https://github.com/EngFlow/credential-helper-spec">Credential Helper Specification</a> (Quy cách trình trợ giúp thông tin đăng nhập) để dùng cho việc truy xuất thông tin đăng nhập uỷ quyền cho hoạt động tìm nạp kho lưu trữ, lưu vào bộ nhớ đệm và thực thi từ xa, cũng như dịch vụ sự kiện bản dựng. Thông tin đăng nhập do một trình trợ giúp cung cấp sẽ được ưu tiên hơn thông tin đăng nhập do `--google_default_credentials`, `--google_credentials`, tệp.netrc hoặc tham số uỷ quyền cho `repository_ctx.download()` và `repository_ctx.download_and_extract()` cung cấp. Bạn có thể chỉ định nhiều lần để thiết lập nhiều trình trợ giúp. Hãy xem hướng dẫn tại https://blog.engflow.com/2023/10/09/configuring-bazels-credential-helper/.
--credential_helper_cache_duration=<An immutable length of time.>
mặc định: "30m"- Thời lượng mặc định mà thông tin đăng nhập do một trình trợ giúp thông tin đăng nhập cung cấp được lưu vào bộ nhớ đệm nếu trình trợ giúp không cung cấp thời điểm thông tin đăng nhập hết hạn.
--credential_helper_timeout=<An immutable length of time.>
mặc định: "10 giây"- Định cấu hình thời gian chờ cho một trình trợ giúp thông tin đăng nhập. Các trình trợ giúp thông tin đăng nhập không phản hồi trong thời gian chờ này sẽ không thực hiện được lệnh gọi.
--curses=<yes, no or auto>
mặc định: "auto"- Sử dụng các chế độ kiểm soát con trỏ của thiết bị đầu cuối để giảm thiểu đầu ra cuộn.
--disk_cache=<a path>
mặc định: xem nội dung mô tả- Đường dẫn đến một thư mục mà Bazel có thể đọc và ghi các thao tác cũng như đầu ra của thao tác. Nếu thư mục chưa tồn tại, thư mục sẽ được tạo.
--[no]enable_platform_specific_config
mặc định: "false"- Nếu đúng, Bazel sẽ chọn các dòng cấu hình dành riêng cho hệ điều hành máy chủ lưu trữ trong tệp bazelrc. Ví dụ: nếu hệ điều hành máy chủ lưu trữ là Linux và bạn chạy bản dựng bazel, thì Bazel sẽ chọn các dòng bắt đầu bằng build:linux. Các giá trị nhận dạng hệ điều hành được hỗ trợ là linux, macos, windows, freebsd và openbsd. Việc bật cờ này tương đương với việc sử dụng --config=linux trên Linux, --config=windows trên Windows, v.v.
--experimental_disk_cache_gc_idle_delay=<An immutable length of time.>
mặc định: "5m"- Khoảng thời gian mà máy chủ phải ở trạng thái không hoạt động trước khi quá trình thu gom rác của bộ nhớ đệm trên đĩa diễn ra. Để chỉ định chính sách thu gom rác, hãy đặt --experimental_disk_cache_gc_max_size và/hoặc --experimental_disk_cache_gc_max_age.
--experimental_disk_cache_gc_max_age=<An immutable length of time.>
mặc định: "0"- Nếu được đặt thành một giá trị dương, bộ nhớ đệm trên đĩa sẽ được thu gom rác định kỳ để xoá các mục nhập cũ hơn độ tuổi này. Nếu được đặt cùng với --experimental_disk_cache_gc_max_size, cả hai tiêu chí sẽ được áp dụng. Quá trình thu gom rác diễn ra ở chế độ nền khi máy chủ ở trạng thái rảnh, theo xác định của cờ --experimental_disk_cache_gc_idle_delay.
--experimental_disk_cache_gc_max_size=<a size in bytes, optionally followed by a K, M, G or T multiplier>
mặc định: "0"- Nếu được đặt thành một giá trị dương, bộ nhớ đệm trên ổ đĩa sẽ được thu gom rác định kỳ để duy trì dưới kích thước này. Nếu được đặt cùng với --experimental_disk_cache_gc_max_age, cả hai tiêu chí sẽ được áp dụng. Quá trình thu gom rác diễn ra ở chế độ nền khi máy chủ ở trạng thái rảnh, theo xác định của cờ --experimental_disk_cache_gc_idle_delay.
--[no]experimental_rule_extension_api
mặc định: "true"-
Bật API tiện ích quy tắc thử nghiệm và API quy tắc phụ
Thẻ:loading_and_analysis
,experimental
--[no]experimental_windows_watchfs
mặc định: "false"- Nếu là true, thì tính năng hỗ trợ Windows thử nghiệm cho --watchfs sẽ được bật. Nếu không, --watchfs sẽ không hoạt động trên Windows. Đừng quên bật cả --watchfs.
--google_auth_scopes=<comma-separated list of options>
default: "https://www.googleapis.com/auth/cloud-platform"- Danh sách các phạm vi xác thực Google Cloud được phân tách bằng dấu phẩy.
--google_credentials=<a string>
mặc định: xem nội dung mô tả- Chỉ định tệp để lấy thông tin xác thực. Hãy xem https://cloud.google.com/docs/authentication để biết thông tin chi tiết.
--[no]google_default_credentials
mặc định: "false"- Có sử dụng "Thông tin xác thực mặc định của ứng dụng trên Google" để xác thực hay không. Hãy xem https://cloud.google.com/docs/authentication để biết thông tin chi tiết. Tắt theo mặc định.
--grpc_keepalive_time=<An immutable length of time.>
mặc định: xem nội dung mô tả- Định cấu hình các lệnh ping duy trì kết nối cho các kết nối gRPC đi. Nếu bạn đặt giá trị này, Bazel sẽ gửi các lệnh ping sau khoảng thời gian này nếu không có thao tác đọc nào trên kết nối, nhưng chỉ khi có ít nhất một lệnh gọi gRPC đang chờ xử lý. Thời gian được coi là có độ chi tiết đến từng giây; việc đặt giá trị nhỏ hơn một giây là một lỗi. Theo mặc định, các lệnh ping duy trì kết nối sẽ bị tắt. Bạn nên phối hợp với chủ sở hữu dịch vụ trước khi bật chế độ cài đặt này. Ví dụ: để đặt giá trị 30 giây cho cờ này, bạn nên thực hiện như sau: --grpc_keepalive_time=30s
--grpc_keepalive_timeout=<An immutable length of time.>
mặc định: "20s"- Định cấu hình thời gian chờ duy trì hoạt động cho các kết nối gRPC đi. Nếu bạn bật ping duy trì hoạt động bằng --grpc_keepalive_time, thì Bazel sẽ hết thời gian chờ kết nối nếu không nhận được phản hồi ping sau khoảng thời gian này. Thời gian được coi là có độ chi tiết đến từng giây; việc đặt giá trị nhỏ hơn một giây là một lỗi. Nếu bạn tắt ping duy trì hoạt động, thì chế độ cài đặt này sẽ bị bỏ qua.
--[no]incompatible_disable_non_executable_java_binary
mặc định: "false"-
Nếu đúng, java_binary sẽ luôn có thể thực thi. Thuộc tính create_executable sẽ bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--inject_repository=<an equals-separated mapping of repository name to path>
nhiều mục đích sử dụng được tích luỹ- Thêm một kho lưu trữ mới có đường dẫn cục bộ dưới dạng <repository name>=<path>. Lệnh này chỉ có hiệu lực khi dùng --enable_bzlmod và tương đương với việc thêm một `local_repository` tương ứng vào tệp MODULE.bazel của mô-đun gốc thông qua `use_repo_rule`. Nếu đường dẫn đã cho là đường dẫn tuyệt đối, thì đường dẫn đó sẽ được dùng nguyên trạng. Nếu đường dẫn đã cho là đường dẫn tương đối, thì đường dẫn đó sẽ tương ứng với thư mục đang hoạt động. Nếu đường dẫn đã cho bắt đầu bằng "%workspace%", thì đường dẫn đó sẽ tương ứng với thư mục gốc của không gian làm việc, tức là đầu ra của `bazel info workspace`. Nếu đường dẫn đã cho là trống, hãy xoá mọi hoạt động chèn trước đó.
--invocation_id=<a UUID>
mặc định: ""-
Giá trị nhận dạng duy nhất, ở định dạng UUID, cho lệnh đang chạy. Nếu được chỉ định rõ ràng, người gọi phải đảm bảo tính duy nhất. UUID được in ra stderr, BEP và giao thức thực thi từ xa.
Thẻ:bazel_monitoring
,bazel_internal_configuration
--override_repository=<an equals-separated mapping of repository name to path>
nhiều mục đích sử dụng được tích luỹ- Ghi đè một kho lưu trữ bằng đường dẫn cục bộ theo dạng <tên kho lưu trữ>=<đường dẫn>. Nếu đường dẫn đã cho là đường dẫn tuyệt đối, thì đường dẫn đó sẽ được sử dụng nguyên trạng. Nếu đường dẫn đã cho là đường dẫn tương đối, thì đường dẫn đó sẽ tương ứng với thư mục đang hoạt động. Nếu đường dẫn đã cho bắt đầu bằng "%workspace%", thì đường dẫn đó sẽ tương ứng với thư mục gốc của không gian làm việc, là đầu ra của "bazel info workspace". Nếu đường dẫn đã cho là trống, hãy xoá mọi chế độ ghi đè trước đó.
--[no]progress_in_terminal_title
mặc định: "false"- Hiện tiến trình lệnh trong tiêu đề cửa sổ dòng lệnh. Hữu ích khi bạn muốn xem bazel đang làm gì khi có nhiều thẻ trên thiết bị đầu cuối.
--[no]show_progress
mặc định: "true"- Hiện thông báo tiến trình trong quá trình tạo.
--show_progress_rate_limit=<a double>
mặc định: "0.2"- Số giây tối thiểu giữa các thông báo tiến trình trong đầu ra.
--[no]show_timestamps
mặc định: "false"- Thêm dấu thời gian vào tin nhắn
--tls_certificate=<a string>
mặc định: xem nội dung mô tả- Chỉ định đường dẫn đến một chứng chỉ TLS được tin cậy để ký chứng chỉ máy chủ.
--tls_client_certificate=<a string>
mặc định: xem nội dung mô tả- Chỉ định chứng chỉ ứng dụng TLS cần dùng; bạn cũng cần cung cấp khoá ứng dụng để bật tính năng xác thực ứng dụng.
--tls_client_key=<a string>
mặc định: xem nội dung mô tả- Chỉ định khoá ứng dụng TLS cần dùng; bạn cũng cần cung cấp chứng chỉ ứng dụng để bật tính năng xác thực ứng dụng.
--ui_actions_shown=<an integer>
mặc định: "8"-
Số lượng thao tác đồng thời xuất hiện trong thanh tiến trình chi tiết; mỗi thao tác xuất hiện trên một dòng riêng biệt. Thanh tiến trình luôn hiển thị ít nhất một số 1, tất cả các số nhỏ hơn 1 đều được ánh xạ thành 1.
Thẻ:terminal_output
--[no]watchfs
mặc định: "false"- Trên Linux/macOS: Nếu đúng, bazel sẽ cố gắng sử dụng dịch vụ theo dõi tệp của hệ điều hành cho các thay đổi cục bộ thay vì quét mọi tệp để tìm thay đổi. Trên Windows: cờ này hiện không hoạt động nhưng có thể được bật cùng với --experimental_windows_watchfs. Trên mọi hệ điều hành: Hành vi không xác định nếu không gian làm việc của bạn nằm trên một hệ thống tệp mạng và các tệp được chỉnh sửa trên một máy từ xa.
Các lựa chọn phân tích hồ sơ
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--dump=<text or raw>
[-d
] mặc định: xem nội dung mô tả-
xuất toàn bộ dữ liệu kết xuất hồ sơ ở định dạng "văn bản" mà con người có thể đọc được hoặc định dạng "thô" thân thiện với tập lệnh.
Thẻ:bazel_monitoring
Lựa chọn Aquery
Kế thừa tất cả các lựa chọn từ build.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của truy vấn:
--aspect_deps=<off, conservative or precise>
mặc định: "thận trọng"-
Cách giải quyết các phần phụ thuộc về khía cạnh khi định dạng đầu ra là một trong các định dạng {xml,proto,record}. "off" có nghĩa là không có sự phụ thuộc nào về khía cạnh được giải quyết, "conservative" (mặc định) có nghĩa là tất cả các sự phụ thuộc đã khai báo về khía cạnh đều được thêm vào bất kể chúng có được cung cấp lớp quy tắc về sự phụ thuộc trực tiếp hay không, "precise" có nghĩa là chỉ những khía cạnh có thể hoạt động được thêm vào khi có lớp quy tắc về sự phụ thuộc trực tiếp. Xin lưu ý rằng chế độ chính xác yêu cầu tải các gói khác để đánh giá một mục tiêu duy nhất, do đó, chế độ này sẽ chậm hơn các chế độ khác. Ngoài ra, hãy lưu ý rằng ngay cả chế độ chính xác cũng không hoàn toàn chính xác: quyết định có tính toán một khía cạnh hay không được quyết định trong giai đoạn phân tích, không chạy trong "bazel query".
Thẻ:build_file_semantics
--[no]consistent_labels
mặc định: "false"-
Nếu được bật, mọi lệnh truy vấn sẽ phát ra nhãn như thể bằng hàm <code>str</code> Starlark được áp dụng cho một thực thể <code>Label</code>. Điều này rất hữu ích cho những công cụ cần so khớp đầu ra của các lệnh truy vấn và/hoặc nhãn khác nhau do các quy tắc phát ra. Nếu không được bật, các trình định dạng đầu ra có thể phát ra tên kho lưu trữ rõ ràng (tương ứng với kho lưu trữ chính) thay vì để đầu ra dễ đọc hơn.
Thẻ:terminal_output
--[no]experimental_explicit_aspects
mặc định: "false"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]graph:factored
mặc định: "true"-
Nếu đúng, thì biểu đồ sẽ được phát ra "được phân tích", tức là các nút tương đương về mặt cấu trúc liên kết sẽ được hợp nhất với nhau và nhãn của chúng sẽ được nối. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--graph:node_limit=<an integer>
mặc định: "512"-
Độ dài tối đa của chuỗi nhãn cho một nút biểu đồ trong đầu ra. Các nhãn dài hơn sẽ bị cắt ngắn; -1 có nghĩa là không bị cắt ngắn. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--[no]implicit_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc ngầm sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Phần phụ thuộc ngầm ẩn là phần phụ thuộc không được chỉ định rõ ràng trong tệp BUILD nhưng được bazel thêm vào. Đối với cquery, lựa chọn này kiểm soát việc lọc các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--[no]include_artifacts
mặc định: "true"-
Bao gồm tên của các đầu vào và đầu ra của thao tác trong đầu ra (có thể lớn).
Thẻ:terminal_output
--[no]include_aspects
mặc định: "true"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]include_commandline
mặc định: "true"-
Bao gồm nội dung của các dòng lệnh hành động trong đầu ra (có thể lớn).
Thẻ:terminal_output
--[no]include_file_write_contents
mặc định: "false"-
Bao gồm nội dung tệp cho các thao tác FileWrite, SourceSymlinkManifest và RepoMappingManifest (có thể có kích thước lớn).
Thẻ:terminal_output
--[no]include_param_files
mặc định: "false"-
Đưa nội dung của các tệp tham số được dùng trong lệnh (có thể có kích thước lớn). Lưu ý: Việc bật cờ này sẽ tự động bật cờ --include_commandline.
Thẻ:terminal_output
--[no]include_pruned_inputs
mặc định: "true"-
Bao gồm các dữ liệu đầu vào của thao tác đã bị cắt bớt trong quá trình thực thi thao tác. Chỉ ảnh hưởng đến những thao tác phát hiện dữ liệu đầu vào và đã được thực thi trong một lệnh gọi trước đó. Chỉ có hiệu lực nếu bạn cũng đặt --include_artifacts.
Thẻ:terminal_output
--[no]incompatible_package_group_includes_double_slash
mặc định: "true"-
Nếu được bật, khi xuất thuộc tính "packages" của package_group, dấu "//" ở đầu sẽ không bị bỏ qua.
Thẻ:terminal_output
,incompatible_change
--[no]infer_universe_scope
mặc định: "false"-
Nếu được đặt và --universe_scope không được đặt, thì giá trị của --universe_scope sẽ được suy luận là danh sách các mẫu mục tiêu duy nhất trong biểu thức truy vấn. Xin lưu ý rằng giá trị --universe_scope được suy luận cho một biểu thức truy vấn sử dụng các hàm có phạm vi toàn cầu (ví dụ: "allrdeps") có thể không phải là giá trị bạn muốn, vì vậy, bạn chỉ nên sử dụng lựa chọn này nếu biết mình đang làm gì. Hãy xem https://bazel.build/reference/query#sky-query để biết thông tin chi tiết và ví dụ. Nếu bạn đặt --universe_scope, thì giá trị của lựa chọn này sẽ bị bỏ qua. Lưu ý: lựa chọn này chỉ áp dụng cho "query" (tức là không phải "cquery").
Thẻ:loading_and_analysis
--[no]line_terminator_null
mặc định: "false"-
Mỗi định dạng có kết thúc bằng \0 thay vì dòng mới hay không.
Thẻ:terminal_output
--[no]nodep_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc từ thuộc tính "nodep" sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một ví dụ phổ biến về thuộc tính "nodep" là "visibility". Chạy và phân tích cú pháp đầu ra của "info build-language" để tìm hiểu về tất cả các thuộc tính "nodep" trong ngôn ngữ bản dựng.
Thẻ:build_file_semantics
--output=<a string>
mặc định: "text"-
Định dạng mà kết quả aquery sẽ được in. Các giá trị được phép cho aquery là: text, textproto, proto, streamed_proto, jsonproto.
Thẻ:terminal_output
--[no]proto:default_values
mặc định: "true"-
Nếu đúng, các thuộc tính có giá trị không được chỉ định rõ ràng trong tệp BUILD sẽ được đưa vào; nếu không, các thuộc tính đó sẽ bị bỏ qua. Tuỳ chọn này áp dụng cho --output=proto
Thẻ:terminal_output
--[no]proto:definition_stack
mặc định: "false"-
Điền vào trường proto definition_stack, ghi lại cho mỗi phiên bản quy tắc ngăn xếp lệnh gọi Starlark tại thời điểm xác định lớp của quy tắc.
Thẻ:terminal_output
--[no]proto:flatten_selects
mặc định: "true"-
Nếu được bật, các thuộc tính có thể định cấu hình do select() tạo sẽ được làm phẳng. Đối với các loại danh sách, biểu diễn được đơn giản hoá là một danh sách chứa chính xác một lần mỗi giá trị của bản đồ chọn. Các loại vô hướng được làm phẳng thành giá trị rỗng.
Thẻ:build_file_semantics
--[no]proto:include_attribute_source_aspects
mặc định: "false"-
Điền trường proto source_aspect_name của mỗi Thuộc tính bằng khía cạnh nguồn mà thuộc tính đó đến từ (chuỗi trống nếu không).
Thẻ:terminal_output
--[no]proto:include_synthetic_attribute_hash
mặc định: "false"-
Có tính toán và điền sẵn thuộc tính $internal_attr_hash hay không.
Thẻ:terminal_output
--[no]proto:instantiation_stack
mặc định: "false"-
Điền vào ngăn xếp lệnh gọi khởi tạo của từng quy tắc. Xin lưu ý rằng điều này yêu cầu phải có ngăn xếp
Thẻ:terminal_output
--[no]proto:locations
mặc định: "true"-
Có xuất thông tin vị trí trong đầu ra proto hay không.
Thẻ:terminal_output
--proto:output_rule_attrs=<comma-separated list of options>
mặc định: "all"-
Danh sách thuộc tính được phân tách bằng dấu phẩy để đưa vào đầu ra. Mặc định là tất cả các thuộc tính. Đặt thành chuỗi trống để không xuất bất kỳ thuộc tính nào. Tuỳ chọn này áp dụng cho --output=proto.
Thẻ:terminal_output
--[no]proto:rule_classes
mặc định: "false"-
Điền vào trường rule_class_key của mỗi quy tắc; và đối với quy tắc đầu tiên có một rule_class_key nhất định, hãy điền vào trường proto rule_class_info của quy tắc đó. Trường rule_class_key xác định duy nhất một lớp quy tắc và trường rule_class_info là một định nghĩa API lớp quy tắc theo định dạng Stardoc.
Thẻ:terminal_output
--[no]proto:rule_inputs_and_outputs
mặc định: "true"-
Có điền sẵn các trường rule_input và rule_output hay không.
Thẻ:terminal_output
--query_file=<a string>
mặc định: ""-
Nếu được đặt, truy vấn sẽ đọc truy vấn từ tệp có tên ở đây, thay vì trên dòng lệnh. Đã xảy ra lỗi khi chỉ định một tệp ở đây cũng như một truy vấn dòng lệnh.
Thẻ:changes_inputs
--[no]relative_locations
mặc định: "false"-
Nếu đúng, vị trí của các tệp BUILD trong đầu ra xml và proto sẽ là tương đối. Theo mặc định, đầu ra vị trí là một đường dẫn tuyệt đối và sẽ không nhất quán trên các máy. Bạn có thể đặt tuỳ chọn này thành true để có kết quả nhất quán trên các máy.
Thẻ:terminal_output
--[no]skyframe_state
mặc định: "false"-
Không cần thực hiện thêm phân tích, hãy kết xuất Action Graph hiện tại từ Skyframe. Lưu ý: Hiện tại, bạn không thể chỉ định mục tiêu bằng --skyframe_state. Cờ này chỉ có sẵn khi dùng --output=proto hoặc --output=textproto.
Thẻ:terminal_output
--[no]tool_deps
mặc định: "true"-
Truy vấn: Nếu bị vô hiệu hoá, các phần phụ thuộc vào "cấu hình thực thi" sẽ không được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một cạnh phần phụ thuộc "cấu hình exec", chẳng hạn như cạnh từ bất kỳ quy tắc "proto_library" nào đến Trình biên dịch giao thức, thường trỏ đến một công cụ được thực thi trong quá trình tạo thay vì một phần của cùng một chương trình "target".
Cquery: Nếu bị vô hiệu hoá, sẽ lọc ra tất cả các mục tiêu đã định cấu hình vượt qua quá trình chuyển đổi thực thi từ mục tiêu cấp cao nhất đã phát hiện ra mục tiêu đã định cấu hình này. Điều này có nghĩa là nếu mục tiêu cấp cao nhất nằm trong cấu hình mục tiêu, thì chỉ những mục tiêu được định cấu hình cũng nằm trong cấu hình mục tiêu mới được trả về. Nếu mục tiêu cấp cao nhất nằm trong cấu hình exec, thì chỉ các mục tiêu được định cấu hình exec mới được trả về. Lựa chọn này SẼ KHÔNG loại trừ các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--universe_scope=<comma-separated list of options>
mặc định: ""-
Một nhóm mẫu mục tiêu được phân tách bằng dấu phẩy (bổ sung và trừ). Truy vấn có thể được thực hiện trong vũ trụ được xác định bằng bao đóng bắc cầu của các mục tiêu được chỉ định. Lựa chọn này được dùng cho các lệnh truy vấn và cquery.
Đối với cquery, đầu vào cho lựa chọn này là các mục tiêu mà tất cả câu trả lời được xây dựng theo đó, vì vậy, lựa chọn này có thể ảnh hưởng đến các cấu hình và quá trình chuyển đổi. Nếu bạn không chỉ định lựa chọn này, thì các mục tiêu cấp cao nhất sẽ được giả định là các mục tiêu được phân tích cú pháp từ biểu thức truy vấn. Lưu ý: Đối với cquery, việc không chỉ định lựa chọn này có thể khiến bản dựng bị gián đoạn nếu các mục tiêu được phân tích cú pháp từ biểu thức truy vấn không thể tạo được bằng các lựa chọn cấp cao nhất.
Thẻ:loading_and_analysis
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]experimental_inprocess_symlink_creation
mặc định: "true"- Có thực hiện các lệnh gọi trực tiếp đến hệ thống tệp để tạo cây liên kết tượng trưng hay không thay vì uỷ quyền cho một quy trình trợ giúp.
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_persistent_aar_extractor
mặc định: "false"-
Bật trình trích xuất aar liên tục bằng cách sử dụng các worker.
Thẻ:execution
,experimental
--[no]experimental_remotable_source_manifests
mặc định: "false"-
Có nên thực hiện các thao tác trên tệp kê khai nguồn từ xa hay không
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_split_coverage_postprocessing
mặc định: "false"-
Nếu đúng, Bazel sẽ chạy quy trình xử lý hậu kỳ về mức độ phù hợp cho kiểm thử trong một quy trình tạo mới.
Thẻ:execution
,experimental
--[no]experimental_strict_fileset_output
mặc định: "false"-
Nếu bạn bật lựa chọn này, thì các nhóm tệp sẽ coi tất cả các cấu phần phần mềm đầu ra là tệp thông thường. Chúng sẽ không đi qua các thư mục hoặc nhạy cảm với các đường liên kết tượng trưng.
Thẻ:execution
,experimental
--[no]incompatible_modify_execution_info_additive
mặc định: "false"-
Khi được bật, việc truyền nhiều cờ --modify_execution_info sẽ có tính cộng dồn. Khi bị vô hiệu hoá, hệ thống chỉ xem xét cờ cuối cùng.
Thẻ:execution
,affects_outputs
,loading_and_analysis
,incompatible_change
--modify_execution_info=<regex=[+-]key,regex=[+-]key,...>
nhiều mục đích sử dụng được tích luỹ-
Thêm hoặc xoá các khoá khỏi thông tin thực thi của một thao tác dựa trên từ viết tắt của thao tác. Chỉ áp dụng cho những thao tác hỗ trợ thông tin thực thi. Nhiều thao tác phổ biến hỗ trợ thông tin thực thi, ví dụ: Genrule, CppCompile, Javac, StarlarkAction, TestRunner. Khi chỉ định nhiều giá trị, thứ tự sẽ quan trọng vì nhiều biểu thức chính quy có thể áp dụng cho cùng một mã nhớ.
Cú pháp: "regex=[+-]key,regex=[+-]key,...".
Ví dụ: ".*=+x,.*=-y,.*=+z" sẽ thêm "x" và "z" vào, đồng thời xoá "y" khỏi thông tin thực thi cho tất cả các thao tác.
"Genrule=+requires-x" sẽ thêm "requires-x" vào thông tin thực thi cho tất cả các thao tác Genrule.
"(?!Genrule).*=-requires-x" sẽ xoá "requires-x" khỏi thông tin thực thi cho tất cả các thao tác không phải Genrule.
Thẻ:execution
,affects_outputs
,loading_and_analysis
--persistent_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_android_dex_desugar
--strategy=Desugar=worker
--strategy=DexBuilder=worker
Thẻ:host_machine_resource_optimizations
,execution
--persistent_android_resource_processor
-
Bật trình xử lý tài nguyên Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_busybox_tools
--strategy=AaptPackage=worker
--strategy=AndroidResourceParser=worker
--strategy=AndroidResourceValidator=worker
--strategy=AndroidResourceCompiler=worker
--strategy=RClassGenerator=worker
--strategy=AndroidResourceLink=worker
--strategy=AndroidAapt2=worker
--strategy=AndroidAssetMerger=worker
--strategy=AndroidResourceMerger=worker
--strategy=AndroidCompiledResourceMerger=worker
--strategy=ManifestMerger=worker
--strategy=AndroidManifestMerger=worker
--strategy=Aapt2Optimize=worker
--strategy=AARGenerator=worker
--strategy=ProcessDatabinding=worker
--strategy=GenerateDataBindingBaseClasses=worker
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_dex_desugar
--internal_persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_resource_processor
-
Bật trình xử lý tài nguyên Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_resource_processor
--modify_execution_info=AaptPackage=+supports-multiplex-workers
--modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
--modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
--modify_execution_info=RClassGenerator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
--modify_execution_info=AndroidAapt2=+supports-multiplex-workers
--modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
--modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
--modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
--modify_execution_info=ManifestMerger=+supports-multiplex-workers
--modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
--modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
--modify_execution_info=AARGenerator=+supports-multiplex-workers
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_tools
-
Bật các công cụ Android liên tục và được ghép kênh (dexing, desugaring, xử lý tài nguyên).
Mở rộng thành:
--internal_persistent_multiplex_busybox_tools
--persistent_multiplex_android_resource_processor
--persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--[no]use_target_platform_for_tests
mặc định: "false"-
Nếu đúng, Bazel sẽ sử dụng nền tảng mục tiêu để chạy các kiểm thử thay vì nhóm thực thi kiểm thử.
Thẻ:execution
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--android_compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch mục tiêu Android.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_manifest_merger=<legacy, android or force_android>
mặc định: "android"-
Chọn công cụ sáp nhập tệp kê khai để dùng cho các quy tắc android_binary. Cờ giúp chuyển đổi sang công cụ sáp nhập tệp kê khai Android từ công cụ sáp nhập cũ.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_platforms=<a build target label>
mặc định: ""-
Đặt các nền tảng mà mục tiêu android_binary sử dụng. Nếu bạn chỉ định nhiều nền tảng, thì tệp nhị phân sẽ là một APK lớn, chứa các tệp nhị phân gốc cho từng nền tảng mục tiêu được chỉ định.
Thẻ:changes_inputs
,loading_and_analysis
,loses_incremental_state
--apple_crosstool_top=<a build target label>
default: "@bazel_tools//tools/cpp:toolchain"-
Nhãn của gói crosstool sẽ được dùng trong các quy tắc Apple và Objc cũng như các phần phụ thuộc của chúng.
Thẻ:loses_incremental_state
,changes_inputs
--cc_output_directory_tag=<a string>
mặc định: ""-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:affects_outputs
--compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch C++ cần dùng để biên dịch mục tiêu.
Thẻ:loading_and_analysis
,execution
--coverage_output_generator=<a build target label>
default: "@bazel_tools//tools/test:lcov_merger"-
Vị trí của tệp nhị phân dùng để xử lý hậu kỳ các báo cáo phạm vi thô. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Giá trị mặc định là "//tools/test:lcov_merger".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_report_generator=<a build target label>
default: "@bazel_tools//tools/test:coverage_report_generator"-
Vị trí của tệp nhị phân dùng để tạo báo cáo về mức độ phù hợp. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Mặc định là "//tools/test:coverage_report_generator".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_support=<a build target label>
default: "@bazel_tools//tools/test:coverage_support"-
Vị trí của các tệp hỗ trợ bắt buộc trên đầu vào của mọi thao tác kiểm thử thu thập mức độ phù hợp của mã. Giá trị mặc định là "//tools/test:coverage_support".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--custom_malloc=<a build target label>
mặc định: xem nội dung mô tả-
Chỉ định một cách triển khai malloc tuỳ chỉnh. Chế độ cài đặt này sẽ ghi đè các thuộc tính malloc trong quy tắc bản dựng.
Thẻ:changes_inputs
,affects_outputs
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các biểu thức chính quy được phân tách bằng dấu phẩy, mỗi biểu thức có thể có tiền tố là dấu "-" (biểu thức phủ định), được chỉ định (=) cho danh sách các mục tiêu giá trị ràng buộc được phân tách bằng dấu phẩy. Nếu một mục tiêu không khớp với biểu thức phủ định nào và khớp với ít nhất một biểu thức khẳng định, thì quá trình phân giải chuỗi công cụ của mục tiêu đó sẽ được thực hiện như thể mục tiêu đó đã khai báo các giá trị ràng buộc dưới dạng các ràng buộc thực thi. Ví dụ: //demo,-test=@platforms//cpus:x86_64 sẽ thêm "x86_64" vào mọi mục tiêu trong //demo, ngoại trừ những mục tiêu có tên chứa "test".
Thẻ:loading_and_analysis
--[no]experimental_include_xcode_execution_requirements
mặc định: "false"-
Nếu được đặt, hãy thêm yêu cầu thực thi "requires-xcode:{version}" vào mọi thao tác Xcode. Nếu phiên bản Xcode có nhãn được phân tách bằng dấu gạch ngang, hãy thêm yêu cầu thực thi "requires-xcode-label:{version_label}".
Thẻ:loses_incremental_state
,loading_and_analysis
,execution
,experimental
--[no]experimental_prefer_mutual_xcode
mặc định: "true"-
Nếu đúng, hãy sử dụng Xcode gần đây nhất có sẵn trên cả thiết bị cục bộ và từ xa. Nếu là false hoặc nếu không có phiên bản nào tương thích, hãy sử dụng phiên bản Xcode cục bộ được chọn thông qua xcode-select.
Thẻ:loses_incremental_state
,experimental
--extra_execution_platforms=<comma-separated list of options>
mặc định: ""-
Các nền tảng có sẵn dưới dạng nền tảng thực thi để chạy các thao tác. Bạn có thể chỉ định nền tảng theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các nền tảng này sẽ được cân nhắc trước những nền tảng được khai báo trong tệp WORKSPACE bằng register_execution_platforms(). Bạn chỉ có thể đặt lựa chọn này một lần; các phiên bản sau sẽ ghi đè các chế độ cài đặt cờ trước đó.
Thẻ:execution
--extra_toolchains=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các quy tắc chuỗi công cụ cần được xem xét trong quá trình phân giải chuỗi công cụ. Bạn có thể chỉ định chuỗi công cụ theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các chuỗi công cụ này sẽ được xem xét trước những chuỗi công cụ được khai báo trong tệp WORKSPACE bằng register_toolchains().
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--grte_top=<a label>
mặc định: xem nội dung mô tả-
Nhãn cho một thư viện libc đã đăng ký. Giá trị mặc định được chọn theo chuỗi công cụ crosstool và bạn hầu như không bao giờ cần ghi đè giá trị này.
Thẻ:action_command_lines
,affects_outputs
--host_compiler=<a string>
mặc định: xem nội dung mô tả-
Cờ không hoạt động. Sẽ bị xoá trong một bản phát hành sau này.
Thẻ:loading_and_analysis
,execution
--host_grte_top=<a label>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, chế độ cài đặt này sẽ ghi đè thư mục cấp cao nhất libc (--grte_top) cho cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_platform=<a build target label>
mặc định: "@bazel_tools//tools:host_platform"-
Nhãn của một quy tắc nền tảng mô tả hệ thống máy chủ.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--[no]incompatible_bazel_test_exec_run_under
mặc định: "false"-
Nếu được bật, "bazel test --run_under=//:runner" sẽ tạo "//:runner" trong cấu hình exec. Nếu bị tắt, thao tác này sẽ tạo "//:runner" trong cấu hình đích. Bazel thực thi các kiểm thử trên các máy thực thi, vì vậy, phương án đầu tiên chính xác hơn. Điều này không ảnh hưởng đến "bazel run", luôn tạo "`--run_under=//foo" trong cấu hình mục tiêu.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features
mặc định: "true"-
Nếu đúng, Bazel sẽ không bật các tính năng "host" và "nonhost" trong chuỗi công cụ c++ (xem https://github.com/bazelbuild/bazel/issues/7407 để biết thêm thông tin).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enable_apple_toolchain_resolution
mặc định: "false"-
Sử dụng độ phân giải chuỗi công cụ để chọn Apple SDK cho các quy tắc của Apple (Starlark và gốc)
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_remove_legacy_whole_archive
mặc định: "true"-
Nếu đúng, theo mặc định, Bazel sẽ không liên kết các phần phụ thuộc của thư viện dưới dạng toàn bộ kho lưu trữ (xem https://github.com/bazelbuild/bazel/issues/7362 để biết hướng dẫn di chuyển).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_strip_executable_safely
mặc định: "false"-
Nếu đúng, thao tác xoá cho các tệp thực thi sẽ sử dụng cờ -x. Cờ này không làm gián đoạn quá trình phân giải biểu tượng động.
Thẻ:action_command_lines
,incompatible_change
-
Sử dụng các đối tượng dùng chung của giao diện nếu được chuỗi công cụ hỗ trợ. Tất cả các chuỗi công cụ ELF hiện đều hỗ trợ chế độ cài đặt này.
Thẻ:loading_and_analysis
,affects_outputs
,affects_outputs
--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của iOS SDK cần dùng để tạo ứng dụng iOS. Nếu không được chỉ định, sẽ sử dụng phiên bản iOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của SDK macOS cần dùng để tạo các ứng dụng macOS. Nếu không được chỉ định, sẽ sử dụng phiên bản SDK macOS mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--minimum_os_version=<a string>
mặc định: xem nội dung mô tả-
Phiên bản hệ điều hành tối thiểu mà mục tiêu biên dịch của bạn hướng đến.
Thẻ:loading_and_analysis
,affects_outputs
--platform_mappings=<a main workspace-relative path>
mặc định: ""-
Vị trí của một tệp ánh xạ mô tả nền tảng cần sử dụng nếu không có nền tảng nào được đặt hoặc cờ cần đặt khi đã có nền tảng. Phải tương ứng với thư mục gốc của không gian làm việc chính. Mặc định là "platform_mappings" (một tệp ngay bên dưới thư mục gốc của không gian làm việc).
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
,immutable
--platforms=<a build target label>
mặc định: ""-
Nhãn của các quy tắc nền tảng mô tả nền tảng mục tiêu cho lệnh hiện tại.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--python_path=<a string>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối của trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--python_top=<a build target label>
mặc định: xem nội dung mô tả-
Nhãn của py_runtime đại diện cho trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản SDK tvOS cần dùng để tạo ứng dụng tvOS. Nếu không được chỉ định, sẽ sử dụng phiên bản tvOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của watchOS SDK cần dùng để tạo ứng dụng watchOS. Nếu không được chỉ định, hãy sử dụng phiên bản watchOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--xcode_version=<a string>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, hãy sử dụng Xcode của phiên bản đã cho cho các thao tác xây dựng có liên quan. Nếu không chỉ định, hãy sử dụng phiên bản mặc định của trình thực thi Xcode.
Thẻ:loses_incremental_state
--xcode_version_config=<a build target label>
mặc định: "@bazel_tools//tools/cpp:host_xcodes"-
Nhãn của quy tắc xcode_config sẽ được dùng để chọn phiên bản Xcode trong cấu hình bản dựng.
Thẻ:loses_incremental_state
,loading_and_analysis
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]apple_generate_dsym
mặc định: "false"-
Có tạo (các) tệp biểu tượng gỡ lỗi (.dSYM) hay không.
Thẻ:affects_outputs
,action_command_lines
--[no]build_runfile_links
mặc định: "true"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfile cho tất cả các mục tiêu. Nếu là false, chỉ ghi các tệp này khi cần thiết theo lệnh chạy, kiểm thử hoặc thao tác cục bộ.
Thẻ:affects_outputs
--[no]build_runfile_manifests
mặc định: "true"-
Nếu đúng, hãy ghi tệp kê khai runfile cho tất cả các mục tiêu. Nếu là false, hãy bỏ qua các giá trị này. Các kiểm thử cục bộ sẽ không chạy được khi có giá trị false.
Thẻ:affects_outputs
--[no]build_test_dwp
mặc định: "false"-
Nếu được bật, khi tạo các bài kiểm thử C++ một cách tĩnh và bằng cách phân hạch, tệp .dwp cho tệp nhị phân kiểm thử cũng sẽ được tạo tự động.
Thẻ:loading_and_analysis
,affects_outputs
--cc_proto_library_header_suffixes=<comma-separated set of options>
mặc định: ".pb.h"-
Đặt hậu tố của các tệp tiêu đề mà cc_proto_library tạo.
Thẻ:affects_outputs
,loading_and_analysis
--cc_proto_library_source_suffixes=<comma-separated set of options>
mặc định: ".pb.cc"-
Đặt hậu tố của các tệp nguồn mà cc_proto_library tạo ra.
Thẻ:affects_outputs
,loading_and_analysis
--[no]experimental_proto_descriptor_sets_include_source_info
mặc định: "false"-
Chạy các thao tác bổ sung cho các phiên bản API Java thay thế trong proto_library.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_save_feature_state
mặc định: "false"-
Lưu trạng thái của các tính năng đã bật và được yêu cầu dưới dạng đầu ra của quá trình biên dịch.
Thẻ:affects_outputs
,experimental
--fission=<a set of compilation modes>
mặc định: "no"-
Chỉ định chế độ biên dịch nào sử dụng phân hạch cho các hoạt động biên dịch và liên kết C++. Có thể là bất kỳ tổ hợp nào của {'fastbuild', 'dbg', 'opt'} hoặc các giá trị đặc biệt "yes" để bật tất cả các chế độ và "no" để tắt tất cả các chế độ.
Thẻ:loading_and_analysis
,action_command_lines
,affects_outputs
--[no]incompatible_always_include_files_in_data
mặc định: "true"-
Nếu đúng, các quy tắc gốc sẽ thêm <code>DefaultInfo.files</code> của các phần phụ thuộc dữ liệu vào runfiles, khớp với hành vi được đề xuất cho các quy tắc Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid).
Thẻ:affects_outputs
,incompatible_change
--[no]legacy_external_runfiles
mặc định: "false"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfiles cho các kho lưu trữ bên ngoài trong .runfiles/wsname/external/repo (ngoài .runfiles/repo).
Thẻ:affects_outputs
--[no]objc_generate_linkmap
mặc định: "false"-
Chỉ định xem có tạo tệp linkmap hay không.
Thẻ:affects_outputs
--[no]save_temps
mặc định: "false"-
Nếu được đặt, các kết quả tạm thời từ gcc sẽ được lưu. Các tệp này bao gồm tệp .s (mã hợp ngữ), tệp .i (C đã xử lý trước) và tệp .ii (C++ đã xử lý trước).
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, thay vì sự tồn tại của đầu ra:
--action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--allowed_cpu_values=<comma-separated set of options>
mặc định: ""-
Các giá trị được phép cho cờ --cpu.
Thẻ:changes_inputs
,affects_outputs
--[no]android_databinding_use_androidx
mặc định: "true"-
Tạo các tệp liên kết dữ liệu tương thích với AndroidX. Chỉ dùng với tính năng liên kết dữ liệu phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]android_databinding_use_v3_4_args
mặc định: "true"-
Sử dụng android databinding phiên bản 2 với đối số 3.4.0. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--android_dynamic_mode=<off, default or fully>
mặc định: "tắt"-
Xác định xem các phần phụ thuộc C++ của các quy tắc Android sẽ được liên kết một cách linh động khi cc_binary không tạo rõ ràng một thư viện dùng chung hay không. "default" có nghĩa là bazel sẽ chọn có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:affects_outputs
,loading_and_analysis
--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency>
mặc định: "theo bảng chữ cái"-
Đặt thứ tự của các tệp kê khai được truyền đến trình sáp nhập tệp kê khai cho các tệp nhị phân Android. ALPHABETICAL nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với execroot. ALPHABETICAL_BY_CONFIGURATION có nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với thư mục cấu hình trong thư mục đầu ra. DEPENDENCY có nghĩa là các tệp kê khai được sắp xếp theo thứ tự, trong đó tệp kê khai của mỗi thư viện sẽ xuất hiện trước tệp kê khai của các phần phụ thuộc.
Thẻ:action_command_lines
,execution
--[no]android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
--[no]build_python_zip
mặc định: "auto"-
Tạo tệp zip thực thi Python; bật trên Windows, tắt trên các nền tảng khác
Thẻ:affects_outputs
--catalyst_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple Catalyst.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]collect_code_coverage
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ đo lường mã (sử dụng tính năng đo lường ngoại tuyến nếu có thể) và sẽ thu thập thông tin về mức độ phù hợp trong quá trình kiểm thử. Chỉ những mục tiêu khớp với --instrumentation_filter mới bị ảnh hưởng. Thông thường, bạn không nên chỉ định trực tiếp lựa chọn này mà nên dùng lệnh "bazel coverage".
Thẻ:affects_outputs
--compilation_mode=<fastbuild, dbg or opt>
[-c
] mặc định: "fastbuild"-
Chỉ định chế độ mà tệp nhị phân sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn C.
Thẻ:action_command_lines
,affects_outputs
--copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc.
Thẻ:action_command_lines
,affects_outputs
--cpu=<a string>
mặc định: ""-
CPU mục tiêu.
Thẻ:changes_inputs
,affects_outputs
--cs_fdo_absolute_path=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ CSFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên đường dẫn tuyệt đối của tệp zip chứa tệp hồ sơ, tệp hồ sơ LLVM thô hoặc được lập chỉ mục.
Thẻ:affects_outputs
--cs_fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo các tệp nhị phân bằng tính năng đo lường FDO theo ngữ cảnh. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--cs_fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
cs_fdo_profile đại diện cho hồ sơ theo ngữ cảnh sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch các tệp nguồn C++.
Thẻ:action_command_lines
,affects_outputs
--define=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lựa chọn --define chỉ định một phép gán cho biến bản dựng. Trong trường hợp có nhiều giá trị cho một biến, giá trị cuối cùng sẽ được dùng.
Thẻ:changes_inputs
,affects_outputs
--dynamic_mode=<off, default or fully>
mặc định: "default"-
Xác định xem các tệp nhị phân C++ sẽ được liên kết một cách linh động hay không. "default" có nghĩa là Bazel sẽ chọn xem có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:loading_and_analysis
,affects_outputs
--[no]enable_propeller_optimize_absolute_paths
mặc định: "true"-
Nếu được đặt, mọi việc sử dụng đường dẫn tuyệt đối để tối ưu hoá cánh quạt sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_remaining_fdo_absolute_paths
mặc định: "true"-
Nếu bạn đặt chính sách này, mọi việc sử dụng đường dẫn tuyệt đối cho FDO sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_runfiles
mặc định: "auto"-
Bật cây liên kết tượng trưng runfiles; Theo mặc định, chế độ này sẽ tắt trên Windows và bật trên các nền tảng khác.
Thẻ:affects_outputs
--experimental_action_listener=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Ngừng sử dụng và thay bằng các khía cạnh. Sử dụng action_listener để đính kèm extra_action vào các thao tác xây dựng hiện có.
Thẻ:execution
,experimental
--[no]experimental_android_compress_java_resources
mặc định: "false"-
Nén tài nguyên Java trong APK
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_databinding_v2
mặc định: "true"-
Sử dụng tính năng liên kết dữ liệu Android phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_rewrite_dexes_with_rex
mặc định: "false"-
sử dụng công cụ rex để viết lại các tệp dex
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_collect_code_coverage_for_generated_files
mặc định: "false"-
Nếu được chỉ định, Bazel cũng sẽ tạo thông tin thu thập mức độ phù hợp cho các tệp đã tạo.
Thẻ:affects_outputs
,experimental
--experimental_objc_fastbuild_options=<comma-separated list of options>
mặc định: "-O0,-DDEBUG=1"-
Sử dụng các chuỗi này làm lựa chọn trình biên dịch fastbuild objc.
Thẻ:action_command_lines
--[no]experimental_omitfp
mặc định: "false"-
Nếu đúng, hãy dùng libunwind để huỷ ngăn xếp và biên dịch bằng -fomit-frame-pointer và -fasynchronous-unwind-tables.
Thẻ:action_command_lines
,affects_outputs
,experimental
--experimental_output_paths=<off, content or strip>
mặc định: "tắt"-
Nên dùng mô hình nào để quy tắc ghi đầu ra ở đâu trong cây đầu ra, đặc biệt là đối với các bản dựng đa nền tảng / đa cấu hình. Đây là một tính năng thử nghiệm. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/6526 để biết thông tin chi tiết. Các thao tác Starlark có thể chọn tham gia vào việc liên kết đường dẫn bằng cách thêm khoá "supports-path-mapping" vào từ điển "execution_requirements".
Thẻ:loses_incremental_state
,bazel_internal_configuration
,affects_outputs
,execution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi mục nhập phải có dạng label=value, trong đó label đề cập đến một nền tảng và values là tên viết tắt mong muốn dùng trong đường dẫn đầu ra. Chỉ được dùng khi --experimental_platform_in_output_dir là true. Có mức độ ưu tiên đặt tên cao nhất.
Thẻ:affects_outputs
,experimental
--[no]experimental_platform_in_output_dir
mặc định: "false"-
Nếu đúng, tên viết tắt của nền tảng mục tiêu sẽ được dùng trong tên thư mục đầu ra thay vì CPU. Lược đồ chính xác là thử nghiệm và có thể thay đổi: Trước tiên, trong trường hợp hiếm gặp khi lựa chọn --platforms không có chính xác một giá trị, thì hàm băm của lựa chọn platforms sẽ được sử dụng. Tiếp theo, nếu có tên ngắn nào cho nền tảng hiện tại được đăng ký bằng --experimental_override_name_platform_in_output_dir, thì tên ngắn đó sẽ được dùng. Sau đó, nếu bạn đặt --experimental_use_platforms_in_output_dir_legacy_heuristic, hãy dùng tên ngắn dựa trên Nhãn nền tảng hiện tại. Cuối cùng, hàm băm của lựa chọn nền tảng sẽ được dùng làm phương án cuối cùng.
Thẻ:affects_outputs
,experimental
--[no]experimental_py_binaries_include_label
mặc định: "false"-
Các mục tiêu py_binary bao gồm cả nhãn của chúng ngay cả khi tính năng đóng dấu bị tắt.
Thẻ:affects_outputs
,experimental
--[no]experimental_use_llvm_covmap
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ tạo thông tin về bản đồ mức độ phù hợp llvm-cov thay vì gcov khi collect_code_coverage được bật.
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_use_platforms_in_output_dir_legacy_heuristic
mặc định: "true"-
Vui lòng chỉ sử dụng cờ này trong quá trình di chuyển hoặc thử nghiệm theo đề xuất. Xin lưu ý rằng phương pháp phỏng đoán này có những điểm thiếu sót đã biết và bạn nên di chuyển để chỉ dựa vào --experimental_override_name_platform_in_output_dir.
Thẻ:affects_outputs
,experimental
--fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo tệp nhị phân bằng tính năng đo lường FDO. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--fdo_optimize=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ FDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của một tệp zip chứa cây tệp .gcda, một tệp afdo chứa hồ sơ tự động hoặc một tệp hồ sơ LLVM. Cờ này cũng chấp nhận các tệp được chỉ định dưới dạng nhãn (ví dụ: `//foo/bar:file.afdo` – bạn có thể cần thêm chỉ thị `exports_files` vào gói tương ứng) và các nhãn trỏ đến mục tiêu `fdo_profile`. Cờ này sẽ được thay thế bằng quy tắc "fdo_profile".
Thẻ:affects_outputs
--fdo_prefetch_hints=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng gợi ý tìm nạp trước bộ nhớ đệm.
Thẻ:affects_outputs
--fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
fdo_profile đại diện cho hồ sơ sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt cho các mục tiêu được tạo trong cấu hình mục tiêu. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực. Xem thêm --host_features
Các thẻ:changes_inputs
,affects_outputs
--[no]force_pic
mặc định: "false"-
Nếu được bật, tất cả các bản biên dịch C++ sẽ tạo ra mã độc lập với vị trí ("-fPIC"), các đường liên kết ưu tiên các thư viện được tạo sẵn PIC hơn các thư viện không phải PIC và các đường liên kết tạo ra các tệp thực thi độc lập với vị trí ("-pie").
Thẻ:loading_and_analysis
,affects_outputs
--host_action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình thực thi. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt>
mặc định: "opt"-
Chỉ định chế độ mà các công cụ được dùng trong quá trình tạo sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--host_conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình biên dịch C khi biên dịch các tệp nguồn C (nhưng không phải C++) trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_cpu=<a string>
mặc định: ""-
CPU lưu trữ.
Thẻ:changes_inputs
,affects_outputs
--host_cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C++ cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt đối với các mục tiêu được tạo trong cấu hình thực thi. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực.
Thẻ:changes_inputs
,affects_outputs
--host_force_python=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Ghi đè phiên bản Python cho cấu hình exec. Có thể là "PY2" hoặc "PY3".
Thẻ:loading_and_analysis
,affects_outputs
--host_linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình liên kết khi liên kết các công cụ trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu lưu trữ. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc truyền đến trình biên dịch C/C++ khi biên dịch một số tệp trong cấu hình thực thi. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--[no]incompatible_auto_exec_groups
mặc định: "false"-
Khi được bật, một nhóm thực thi sẽ tự động được tạo cho mỗi chuỗi công cụ mà một quy tắc sử dụng. Để quy tắc này hoạt động, bạn cần chỉ định tham số "toolchain" cho các thao tác của quy tắc. Để biết thêm thông tin, hãy xem https://github.com/bazelbuild/bazel/issues/17134.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_merge_genfiles_directory
mặc định: "true"-
Nếu đúng, thư mục genfiles sẽ được gộp vào thư mục bin.
Thẻ:affects_outputs
,incompatible_change
--[no]instrument_test_targets
mặc định: "false"-
Khi bật tính năng đo lường mức độ phù hợp, hãy chỉ định xem có nên cân nhắc việc đo lường các quy tắc kiểm thử hay không. Khi được đặt, các quy tắc kiểm thử do --instrumentation_filter bao gồm sẽ được đo lường. Nếu không, các quy tắc kiểm thử sẽ luôn bị loại trừ khỏi hoạt động đo lường mức độ sử dụng.
Thẻ:affects_outputs
--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
default: "-/javatests[/:],-/test/java[/:]"-
Khi tính năng đo lường mức độ phù hợp được bật, chỉ những quy tắc có tên được đưa vào bộ lọc dựa trên biểu thức chính quy đã chỉ định mới được đo lường. Thay vào đó, các quy tắc có tiền tố "-" sẽ bị loại trừ. Xin lưu ý rằng chỉ các quy tắc không phải quy tắc kiểm thử mới được đo lường, trừ phi bạn bật --instrument_test_targets.
Thẻ:affects_outputs
--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS tối thiểu tương thích với các trình mô phỏng và thiết bị mục tiêu. Nếu không chỉ định, hãy sử dụng "ios_sdk_version".
Thẻ:loses_incremental_state
--ios_multi_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo ios_application. Kết quả là một tệp nhị phân phổ quát chứa tất cả các cấu trúc được chỉ định.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]legacy_whole_archive
mặc định: "true"-
Không được dùng nữa, được thay thế bằng --incompatible_remove_legacy_whole_archive (xem https://github.com/bazelbuild/bazel/issues/7362 để biết thông tin chi tiết). Khi bật, hãy sử dụng --whole-archive cho các quy tắc cc_binary có linkshared=True và linkstatic=True hoặc "-static" trong linkopts. Điều này chỉ nhằm mục đích tương thích ngược. Một lựa chọn thay thế tốt hơn là sử dụng alwayslink=1 khi cần.
Thẻ:action_command_lines
,affects_outputs
,deprecated
--linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi liên kết.
Thẻ:action_command_lines
,affects_outputs
--ltobackendopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước phụ trợ LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--ltoindexopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước lập chỉ mục LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--macos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple macOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--memprof_profile=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng hồ sơ memprof.
Thẻ:affects_outputs
--[no]objc_debug_with_GLIBCXX
mặc định: "false"-
Nếu được đặt và chế độ biên dịch được đặt thành "dbg", hãy xác định GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC và GLIBCPP_CONCEPT_CHECKS.
Thẻ:action_command_lines
--[no]objc_enable_binary_stripping
mặc định: "false"-
Có thực hiện việc xoá ký hiệu và mã không dùng đến trên các tệp nhị phân được liên kết hay không. Thao tác xoá nhị phân sẽ được thực hiện nếu bạn chỉ định cả cờ này và --compilation_mode=opt.
Thẻ:action_command_lines
--objccopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn Objective-C/C++.
Thẻ:action_command_lines
--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền có chọn lọc đến gcc khi biên dịch một số tệp. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc chuyển đến phần phụ trợ LTO (trong --features=thin_lto) khi biên dịch một số đối tượng phụ trợ nhất định. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ. option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 sẽ thêm tuỳ chọn dòng lệnh -O0 vào dòng lệnh phụ trợ LTO của tất cả các tệp o trong //foo/ ngoại trừ bar.o.
Thẻ:action_command_lines
,affects_outputs
--platform_suffix=<a string>
mặc định: xem nội dung mô tả-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:loses_incremental_state
,affects_outputs
,loading_and_analysis
--propeller_optimize=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ Propeller để tối ưu hoá mục tiêu bản dựng.Hồ sơ Propeller phải bao gồm ít nhất một trong hai tệp, đó là hồ sơ cc và hồ sơ ld. Cờ này chấp nhận một nhãn bản dựng phải tham chiếu đến các tệp đầu vào hồ sơ cánh quạt. Ví dụ: tệp BUILD xác định nhãn, trong a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",)Bạn có thể phải thêm chỉ thị exports_files vào gói tương ứng để Bazel có thể nhìn thấy các tệp này. Bạn phải sử dụng lựa chọn này dưới dạng: --propeller_optimize=//a/b:propeller_profile
Thẻ:action_command_lines
,affects_outputs
--propeller_optimize_absolute_cc_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp cc_profile cho bản dựng được tối ưu hoá Propeller.
Thẻ:affects_outputs
--propeller_optimize_absolute_ld_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp ld_profile cho các bản dựng được tối ưu hoá bằng Propeller.
Thẻ:affects_outputs
--run_under=<a prefix in front of command>
mặc định: xem nội dung mô tả-
Tiền tố cần chèn trước các tệp thực thi cho lệnh "test" và "run". Nếu giá trị là "foo -bar" và dòng lệnh thực thi là "test_binary -baz", thì dòng lệnh cuối cùng là "foo -bar test_binary -baz".Đây cũng có thể là nhãn cho mục tiêu có thể thực thi. Một số ví dụ là: "valgrind", "strace", "strace -c", "valgrind --quiet --num-callers=20", "//package:target", "//package:target --options".
Thẻ:action_command_lines
-
Nếu đúng, các thư viện gốc có chức năng giống nhau sẽ được chia sẻ giữa các mục tiêu khác nhau
Thẻ:loading_and_analysis
,affects_outputs
--[no]stamp
mặc định: "false"-
Đóng dấu tệp nhị phân bằng ngày, tên người dùng, tên máy chủ, thông tin về không gian làm việc, v.v.
Thẻ:affects_outputs
--strip=<always, sometimes or never>
mặc định: "sometimes"-
Chỉ định có xoá các tệp nhị phân và thư viện dùng chung hay không (bằng cách sử dụng "-Wl,--strip-debug"). Giá trị mặc định của "sometimes" có nghĩa là chỉ xoá nếu --compilation_mode=fastbuild.
Thẻ:affects_outputs
--stripopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến strip khi tạo tệp nhị phân "<name>.stripped".
Thẻ:action_command_lines
,affects_outputs
--tvos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple tvOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản tvOS tối thiểu tương thích cho các trình mô phỏng và thiết bị mục tiêu. Nếu không được chỉ định, sẽ sử dụng "tvos_sdk_version".
Thẻ:loses_incremental_state
--visionos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple visionOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple watchOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản watchOS tối thiểu tương thích với các thiết bị và trình mô phỏng mục tiêu. Nếu bạn không chỉ định, hệ thống sẽ dùng "watchos_sdk_version".
Thẻ:loses_incremental_state
--xbinary_fdo=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ XbinaryFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của hồ sơ nhị phân chéo mặc định. Khi được dùng cùng với --fdo_instrument/--fdo_optimize/--fdo_profile, các lựa chọn đó sẽ luôn được ưu tiên như thể xbinary_fdo không bao giờ được chỉ định.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_licenses
mặc định: "false"-
Kiểm tra để đảm bảo rằng các ràng buộc về việc cấp phép do các gói phụ thuộc áp đặt không xung đột với các chế độ phân phối của những mục tiêu đang được tạo. Theo mặc định, giấy phép không được kiểm tra.
Thẻ:build_file_semantics
--[no]check_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi về khả năng hiển thị trong các phần phụ thuộc mục tiêu sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
--[no]desugar_for_android
mặc định: "true"- Có đơn giản hoá mã byte Java 8 trước khi dexing hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]desugar_java8_libs
mặc định: "false"-
Có đưa các thư viện Java 8 được hỗ trợ vào ứng dụng cho các thiết bị cũ hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]enforce_constraints
mặc định: "true"-
Kiểm tra các môi trường mà mỗi mục tiêu tương thích và báo cáo lỗi nếu có mục tiêu nào có các phần phụ thuộc không hỗ trợ cùng một môi trường
Thẻ:build_file_semantics
--[no]experimental_check_desugar_deps
mặc định: "true"-
Có nên kiểm tra kỹ việc khử đường cú pháp chính xác ở cấp nhị phân Android hay không.
Thẻ:eagerness_to_exit
,loading_and_analysis
,experimental
--experimental_import_deps_checking=<a string>
mặc định: xem nội dung mô tả-
Không có thao tác, chỉ giữ lại để đảm bảo khả năng tương thích ngược
Thẻ:loading_and_analysis
--experimental_one_version_enforcement=<off, warning or error>
mặc định: "TẮT"-
Khi được bật, hãy thực thi rằng quy tắc java_binary không được chứa nhiều phiên bản của cùng một tệp lớp trên đường dẫn lớp. Quy trình thực thi này có thể làm hỏng bản dựng hoặc chỉ dẫn đến cảnh báo.
Thẻ:loading_and_analysis
--experimental_strict_java_deps=<off, warn, error, strict or default>
mặc định: "default"-
Nếu đúng, hãy kiểm tra để đảm bảo rằng một mục tiêu Java khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng các phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]incompatible_check_testonly_for_output_files
mặc định: "false"-
Nếu được bật, hãy kiểm tra testonly đối với các mục tiêu tiên quyết là tệp đầu ra bằng cách tra cứu testonly của quy tắc tạo. Thao tác này khớp với việc kiểm tra khả năng hiển thị.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_check_visibility_for_toolchains
mặc định: "false"-
Nếu được bật, quy trình kiểm tra khả năng hiển thị cũng áp dụng cho các hoạt động triển khai chuỗi công cụ.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_native_android_rules
mặc định: "false"-
Nếu bạn bật chính sách này, thì việc sử dụng trực tiếp các quy tắc gốc của Android sẽ bị vô hiệu hoá. Vui lòng sử dụng các quy tắc Starlark Android từ https://github.com/bazelbuild/rules_android
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_disable_native_apple_binary_rule
mặc định: "false"-
Không có thao tác. Vẫn được giữ lại để tương thích ngược.
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_python_disable_py2
mặc định: "true"-
Nếu đúng, việc sử dụng chế độ cài đặt Python 2 sẽ gây ra lỗi. Trong đó có python_version=PY2, srcs_version=PY2 và srcs_version=PY2ONLY. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15684 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]one_version_enforcement_on_java_tests
mặc định: "true"-
Khi được bật và experimental_one_version_enforcement được đặt thành một giá trị không phải NONE, hãy thực thi một phiên bản trên các mục tiêu java_test. Bạn có thể tắt cờ này để cải thiện hiệu suất kiểm thử gia tăng, nhưng sẽ bỏ lỡ các trường hợp vi phạm tiềm ẩn đối với một phiên bản.
Thẻ:loading_and_analysis
--python_native_rules_allowlist=<a build target label>
mặc định: xem nội dung mô tả-
Danh sách cho phép (mục tiêu package_group) để sử dụng khi thực thi --incompatible_python_disallow_native_rules.
Thẻ:loading_and_analysis
--[no]strict_filesets
mặc định: "false"-
Nếu bạn bật lựa chọn này, các nhóm tệp vượt quá ranh giới gói sẽ được báo cáo là lỗi.
Thẻ:build_file_semantics
,eagerness_to_exit
--strict_proto_deps=<off, warn, error, strict or default>
mặc định: "error"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--strict_public_imports=<off, warn, error, strict or default>
mặc định: "tắt"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được dùng trong "import public" dưới dạng mục tiêu được xuất.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--[no]strict_system_includes
mặc định: "false"-
Nếu đúng, các tiêu đề được tìm thấy thông qua đường dẫn bao gồm hệ thống (-isystem) cũng phải được khai báo.
Thẻ:loading_and_analysis
,eagerness_to_exit
--target_environment=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Khai báo môi trường mục tiêu của bản dựng này. Phải là một tham chiếu nhãn đến quy tắc "environment". Nếu được chỉ định, tất cả các mục tiêu cấp cao nhất phải tương thích với môi trường này.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến đầu ra ký của bản dựng:
--apk_signing_method=<v1, v2, v1_v2 or v4>
mặc định: "v1_v2"-
Triển khai để sử dụng ký APK
Thẻ:action_command_lines
,affects_outputs
,loading_and_analysis
--[no]device_debug_entitlements
mặc định: "true"-
Nếu bạn đặt và chế độ biên dịch không phải là "opt", thì các ứng dụng objc sẽ bao gồm các quyền gỡ lỗi khi ký.
Thẻ:changes_inputs
--ios_signing_cert_name=<a string>
mặc định: xem nội dung mô tả-
Tên chứng chỉ dùng để ký iOS. Nếu bạn không đặt chính sách này, thì trình duyệt sẽ quay lại sử dụng hồ sơ cung cấp. Có thể là lựa chọn ưu tiên về danh tính của chuỗi khoá của chứng chỉ hoặc (chuỗi con) tên chung của chứng chỉ, theo trang hướng dẫn của codesign (SIGNING IDENTITIES).
Thẻ:action_command_lines
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_disallow_legacy_py_provider
mặc định: "true"-
Không có thao tác, sẽ sớm bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_sdk_frameworks_attributes
mặc định: "false"-
Nếu đúng, hãy không cho phép các thuộc tính sdk_frameworks và weak_sdk_frameworks trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_objc_alwayslink_by_default
mặc định: "false"-
Nếu đúng, hãy đặt giá trị mặc định thành true cho các thuộc tính alwayslink trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_python_disallow_native_rules
mặc định: "false"-
Khi đúng, sẽ xảy ra lỗi khi sử dụng các quy tắc py_* tích hợp; thay vào đó, bạn nên sử dụng các quy tắc rule_python. Hãy xem https://github.com/bazelbuild/bazel/issues/17773 để biết thêm thông tin và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]allow_analysis_failures
mặc định: "false"-
Nếu đúng, lỗi phân tích của mục tiêu quy tắc sẽ dẫn đến việc mục tiêu truyền một thực thể AnalysisFailureInfo chứa nội dung mô tả lỗi, thay vì dẫn đến lỗi bản dựng.
Thẻ:loading_and_analysis
,experimental
--analysis_testing_deps_limit=<an integer>
mặc định: "2000"-
Đặt số lượng tối đa các phần phụ thuộc bắc cầu thông qua một thuộc tính quy tắc có quá trình chuyển đổi cấu hình for_analysis_testing. Nếu vượt quá giới hạn này, bạn sẽ gặp lỗi về quy tắc.
Thẻ:loading_and_analysis
--[no]break_build_on_parallel_dex2oat_failure
mặc định: "false"-
Nếu đúng, các lỗi hành động dex2oat sẽ khiến bản dựng bị gián đoạn thay vì thực thi dex2oat trong thời gian chạy kiểm thử.
Thẻ:loading_and_analysis
,experimental
--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g. memory=10,30,60,100>
nhiều mục đích sử dụng được tích luỹ- Ghi đè số lượng tài nguyên mặc định cho các bài kiểm thử. Định dạng dự kiến là <resource>=<value>. Nếu một số dương duy nhất được chỉ định làm <value>, thì số đó sẽ ghi đè các tài nguyên mặc định cho tất cả các kích thước kiểm thử. Nếu bạn chỉ định 4 số được phân tách bằng dấu phẩy, thì các số này sẽ ghi đè số lượng tài nguyên cho các kích thước kiểm thử nhỏ, trung bình, lớn và rất lớn tương ứng. Các giá trị cũng có thể là HOST_RAM/HOST_CPU, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4). Các tài nguyên kiểm thử mặc định do cờ này chỉ định sẽ bị ghi đè bởi các tài nguyên rõ ràng được chỉ định trong thẻ.
--[no]experimental_android_use_parallel_dex2oat
mặc định: "false"-
Sử dụng dex2oat song song để có thể tăng tốc android_test.
Thẻ:loading_and_analysis
,host_machine_resource_optimizations
,experimental
--[no]ios_memleaks
mặc định: "false"-
Bật tính năng kiểm tra rò rỉ bộ nhớ trong các mục tiêu ios_test.
Thẻ:action_command_lines
--ios_simulator_device=<a string>
mặc định: xem nội dung mô tả-
Thiết bị cần mô phỏng khi chạy một ứng dụng iOS trong trình mô phỏng, ví dụ: "iPhone 6". Bạn có thể lấy danh sách thiết bị bằng cách chạy "xcrun simctl list devicetypes" trên máy mà trình mô phỏng sẽ chạy.
Thẻ:test_runner
--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS sẽ chạy trên trình mô phỏng khi chạy hoặc kiểm thử. Quy tắc này sẽ bị bỏ qua đối với các quy tắc ios_test nếu bạn chỉ định một thiết bị mục tiêu trong quy tắc.
Thẻ:test_runner
--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ- Chỉ định số lần chạy mỗi bài kiểm thử. Nếu bất kỳ lần thử nào trong số đó không thành công vì bất kỳ lý do nào, thì toàn bộ quy trình kiểm thử sẽ được coi là không thành công. Thông thường, giá trị bạn chỉ định chỉ là một số nguyên. Ví dụ: --runs_per_test=3 sẽ chạy tất cả các kiểm thử 3 lần. Cú pháp thay thế: regex_filter@runs_per_test. Trong đó runs_per_test là một giá trị nguyên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). Ví dụ: --runs_per_test=//foo/.*,-//foo/bar/.*@3 chạy tất cả các bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có mục nào trùng khớp, thì kiểm thử chỉ chạy một lần.
--test_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung sẽ được chèn vào môi trường trình chạy kiểm thử. Bạn có thể chỉ định các biến theo tên (trong trường hợp đó, giá trị của biến sẽ được đọc từ môi trường ứng dụng Bazel) hoặc theo cặp tên=giá trị. Bạn có thể sử dụng lựa chọn này nhiều lần để chỉ định một số biến. Chỉ được dùng bằng lệnh "bazel test".
Thẻ:test_runner
--test_timeout=<a single integer or comma-separated list of 4 integers>
mặc định: "-1"- Ghi đè các giá trị thời gian chờ kiểm thử mặc định cho thời gian chờ kiểm thử (tính bằng giây). Nếu bạn chỉ định một giá trị nguyên dương duy nhất, thì giá trị đó sẽ ghi đè tất cả danh mục. Nếu bạn chỉ định 4 số nguyên được phân tách bằng dấu phẩy, thì các số nguyên này sẽ thay thế thời gian chờ cho các khoảng thời gian ngắn, trung bình, dài và vĩnh viễn (theo thứ tự đó). Trong cả hai biểu mẫu, giá trị -1 cho biết blaze sẽ sử dụng thời gian chờ mặc định cho danh mục đó.
--[no]zip_undeclared_test_outputs
mặc định: "false"-
Nếu đúng, các đầu ra kiểm thử chưa khai báo sẽ được lưu trữ trong một tệp zip.
Thẻ:test_runner
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--[no]experimental_filter_library_jar_with_program_jar
mặc định: "false"-
Lọc ProGuard ProgramJar để xoá mọi lớp cũng có trong LibraryJar.
Thẻ:action_command_lines
,experimental
--[no]experimental_inmemory_dotd_files
mặc định: "true"-
Nếu được bật, các tệp .d C++ sẽ được truyền trực tiếp qua bộ nhớ từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_inmemory_jdeps_files
mặc định: "true"-
Nếu được bật, các tệp phần phụ thuộc (.jdeps) được tạo từ quá trình biên dịch Java sẽ được truyền qua bộ nhớ trực tiếp từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_retain_test_configuration_across_testonly
mặc định: "false"-
Khi được bật, --trim_test_configuration sẽ không cắt bớt cấu hình kiểm thử cho các quy tắc được đánh dấu testonly=1. Điều này nhằm mục đích giảm các vấn đề về xung đột hành động khi các quy tắc không phải quy tắc kiểm thử phụ thuộc vào các quy tắc cc_test. Không có hiệu lực nếu --trim_test_configuration là false.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_starlark_cc_import
mặc định: "false"-
Nếu được bật, bạn có thể sử dụng phiên bản Starlark của cc_import.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_unsupported_and_brittle_include_scanning
mặc định: "false"-
Có nên thu hẹp các đầu vào để biên dịch C/C++ bằng cách phân tích cú pháp các dòng #include từ tệp đầu vào hay không. Điều này có thể cải thiện hiệu suất và mức tăng bằng cách giảm kích thước của các cây đầu vào biên dịch. Tuy nhiên, điều này cũng có thể làm hỏng các bản dựng vì trình quét include không triển khai đầy đủ ngữ nghĩa của trình tiền xử lý C. Cụ thể, nó không hiểu các chỉ thị #include động và bỏ qua logic có điều kiện của trình tiền xử lý. Bạn tự chịu rủi ro khi sử dụng. Mọi vấn đề liên quan đến cờ hiệu này mà bạn gửi đều sẽ bị đóng.
Thẻ:loading_and_analysis
,execution
,changes_inputs
,experimental
--[no]incremental_dexing
mặc định: "true"-
Thực hiện hầu hết các thao tác dexing riêng cho từng tệp Jar.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]objc_use_dotd_pruning
mặc định: "true"-
Nếu được đặt, các tệp .d do clang phát ra sẽ được dùng để cắt bớt tập hợp các đầu vào được truyền vào quá trình biên dịch objc.
Thẻ:changes_inputs
,loading_and_analysis
--[no]process_headers_in_dependencies
mặc định: "false"-
Khi tạo một mục tiêu //a:a, hãy xử lý các tiêu đề trong tất cả các mục tiêu mà //a:a phụ thuộc vào (nếu bạn bật tính năng xử lý tiêu đề cho chuỗi công cụ).
Thẻ:execution
--[no]trim_test_configuration
mặc định: "true"-
Khi được bật, các lựa chọn liên quan đến kiểm thử sẽ bị xoá bên dưới cấp cao nhất của bản dựng. Khi cờ này đang hoạt động, các kiểm thử không thể được tạo dưới dạng các phần phụ thuộc của các quy tắc không phải kiểm thử, nhưng các thay đổi đối với các lựa chọn liên quan đến kiểm thử sẽ không khiến các quy tắc không phải kiểm thử được phân tích lại.
Thẻ:loading_and_analysis
,loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: "-.*"-
In thông tin gỡ lỗi trong quá trình phân giải chuỗi công cụ. Cờ này lấy một biểu thức chính quy, được kiểm tra dựa trên các loại chuỗi công cụ và mục tiêu cụ thể để xem mục tiêu nào cần gỡ lỗi. Bạn có thể phân tách nhiều biểu thức chính quy bằng dấu phẩy, sau đó mỗi biểu thức chính quy sẽ được kiểm tra riêng. Lưu ý: Đầu ra của cờ này rất phức tạp và có thể chỉ hữu ích cho các chuyên gia về độ phân giải chuỗi công cụ.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--flag_alias=<a 'name=value' flag alias>
nhiều mục đích sử dụng được tích luỹ-
Đặt tên viết tắt cho cờ Starlark. Hàm này nhận một cặp khoá-giá trị duy nhất dưới dạng "<key>=<value>" làm đối số.
Thẻ:changes_inputs
--[no]incompatible_default_to_explicit_init_py
mặc định: "false"-
Cờ này thay đổi hành vi mặc định để các tệp __init__.py không còn được tự động tạo trong runfiles của các mục tiêu Python nữa. Cụ thể, khi mục tiêu py_binary hoặc py_test có legacy_create_init được đặt thành "auto" (mặc định), thì mục tiêu đó sẽ được coi là false chỉ khi cờ này được đặt. Xem https://github.com/bazelbuild/bazel/issues/10076.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py2_outputs_are_suffixed
mặc định: "true"-
Nếu đúng, các mục tiêu được tạo trong cấu hình Python 2 sẽ xuất hiện trong một thư mục gốc đầu ra có hậu tố "-py2", trong khi các mục tiêu được tạo cho Python 3 sẽ xuất hiện trong một thư mục gốc không có hậu tố liên quan đến Python. Điều này có nghĩa là symlink tiện lợi `bazel-bin` sẽ trỏ đến các mục tiêu Python 3 thay vì Python 2. Nếu bật lựa chọn này, bạn cũng nên bật `--incompatible_py3_is_default`.
Các thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py3_is_default
mặc định: "true"-
Nếu đúng, các mục tiêu "py_binary" và "py_test" không đặt thuộc tính "python_version" (hoặc "default_python_version") sẽ mặc định là PY3 thay vì PY2. Nếu bạn đặt cờ này, bạn cũng nên đặt `--incompatible_py2_outputs_are_suffixed`.
Các thẻ:loading_and_analysis
,affects_outputs
,incompatible_change
--[no]incompatible_use_python_toolchains
mặc định: "true"-
Nếu bạn đặt thành true, các quy tắc Python gốc có thể thực thi sẽ sử dụng thời gian chạy Python do chuỗi công cụ Python chỉ định, thay vì thời gian chạy do các cờ cũ như --python_top cung cấp.
Thẻ:loading_and_analysis
,incompatible_change
--python_version=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Chế độ phiên bản chính của Python, có thể là "PY2" hoặc "PY3". Xin lưu ý rằng chế độ này sẽ bị ghi đè bởi các mục tiêu "py_binary" và "py_test" (ngay cả khi các mục tiêu đó không chỉ định rõ phiên bản) nên thường không có nhiều lý do để cung cấp cờ này.
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]cache_test_results
[-t
] mặc định: "auto"- Nếu được đặt thành "auto", Bazel sẽ chạy lại một kiểm thử nếu và chỉ nếu: (1) Bazel phát hiện thấy các thay đổi trong kiểm thử hoặc các phần phụ thuộc của kiểm thử, (2) kiểm thử được đánh dấu là bên ngoài, (3) nhiều lần chạy kiểm thử được yêu cầu bằng --runs_per_test hoặc(4) kiểm thử trước đó không thành công. Nếu được đặt thành "yes", Bazel sẽ lưu vào bộ nhớ đệm tất cả kết quả kiểm thử, ngoại trừ những kiểm thử được đánh dấu là bên ngoài. Nếu bạn đặt thành "no", Bazel sẽ không lưu vào bộ nhớ đệm bất kỳ kết quả kiểm thử nào.
--[no]experimental_cancel_concurrent_tests
mặc định: "false"-
Nếu đúng, Blaze sẽ huỷ các thử nghiệm đang chạy đồng thời trong lần chạy thành công đầu tiên. Tuỳ chọn này chỉ hữu ích khi kết hợp với --runs_per_test_detects_flakes.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_fetch_all_coverage_outputs
mặc định: "false"-
Nếu đúng, Bazel sẽ tìm nạp toàn bộ thư mục dữ liệu về mức độ phù hợp cho từng kiểm thử trong quá trình chạy mức độ phù hợp.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_generate_llvm_lcov
mặc định: "false"-
Nếu đúng, mức độ phù hợp cho clang sẽ tạo ra một báo cáo LCOV.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_j2objc_header_map
mặc định: "true"-
Có tạo bản đồ tiêu đề J2ObjC song song với quá trình chuyển đổi J2ObjC hay không.
Thẻ:experimental
--[no]experimental_j2objc_shorter_header_path
mặc định: "false"-
Có tạo bằng đường dẫn tiêu đề ngắn hơn hay không (sử dụng "_ios" thay vì "_j2objc").
Thẻ:affects_outputs
,experimental
--experimental_java_classpath=<off, javabuilder or bazel>
mặc định: "javabuilder"- Cho phép giảm đường dẫn lớp để biên dịch Java.
--[no]experimental_limit_android_lint_to_android_constrained_java
mặc định: "false"-
Không có thao tác, chỉ giữ lại để tương thích ngược
Thẻ:affects_outputs
,experimental
--[no]experimental_run_android_lint_on_java_rules
mặc định: "false"-
Có xác thực các nguồn java_* hay không.
Thẻ:affects_outputs
,experimental
--[no]explicit_java_test_deps
mặc định: "false"- Chỉ định rõ ràng một phần phụ thuộc vào JUnit hoặc Hamcrest trong java_test thay vì vô tình lấy từ các deps của TestRunner. Hiện tại, tính năng này chỉ hoạt động với bazel.
--host_java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java mà các công cụ được thực thi trong quá trình tạo bản dựng sử dụng.
--host_javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để truyền đến javac khi tạo các công cụ được thực thi trong quá trình tạo.
--host_jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến máy ảo Java khi tạo các công cụ được thực thi trong quá trình tạo. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của mỗi mục tiêu java_binary.
--[no]incompatible_check_sharding_support
mặc định: "true"-
Nếu đúng, Bazel sẽ không thực hiện được một kiểm thử phân đoạn nếu trình chạy kiểm thử không cho biết rằng trình chạy này hỗ trợ phân đoạn bằng cách chạm vào tệp tại đường dẫn trong TEST_SHARD_STATUS_FILE. Nếu là false, trình chạy kiểm thử không hỗ trợ phân đoạn sẽ khiến tất cả các kiểm thử chạy trong mỗi phân đoạn.
Thẻ:incompatible_change
--[no]incompatible_exclusive_test_sandboxed
mặc định: "true"-
Nếu đúng, các thử nghiệm độc quyền sẽ chạy với chiến lược hộp cát. Thêm thẻ "local" để buộc chạy thử nghiệm độc quyền cục bộ
Thẻ:incompatible_change
--[no]incompatible_strict_action_env
mặc định: "false"-
Nếu đặt là true, Bazel sẽ sử dụng một môi trường có giá trị tĩnh cho PATH và không kế thừa LD_LIBRARY_PATH. Sử dụng --action_env=ENV_VARIABLE nếu bạn muốn kế thừa các biến môi trường cụ thể từ máy khách, nhưng lưu ý rằng việc này có thể ngăn chặn việc lưu vào bộ nhớ đệm trên nhiều người dùng nếu bạn sử dụng bộ nhớ đệm dùng chung.
Thẻ:loading_and_analysis
,incompatible_change
--j2objc_translation_flags=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến công cụ J2ObjC.
--java_debug
-
Khiến máy ảo Java của một bài kiểm thử Java phải chờ kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như jdb) trước khi bắt đầu kiểm thử. Ngụ ý -test_output=streamed.
Mở rộng thành:
--test_arg=--wrapper_script_flag=--debug
--test_output=streamed
--test_strategy=exclusive
--test_timeout=9999
--nocache_test_results
--[no]java_deps
mặc định: "true"- Tạo thông tin về phần phụ thuộc (hiện tại là đường dẫn lớp thời gian biên dịch) cho mỗi mục tiêu Java.
--[no]java_header_compilation
mặc định: "true"- Biên dịch ijar trực tiếp từ nguồn.
--java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java
--java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java sẽ dùng khi tạo các tệp nhị phân Java. Nếu bạn đặt cờ này thành chuỗi trống, thì trình khởi chạy JDK sẽ được dùng. Thuộc tính "launcher" sẽ ghi đè cờ này.
--java_runtime_version=<a string>
mặc định: "local_jdk"- Phiên bản thời gian chạy Java
--javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến javac.
--jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để chuyển đến máy ảo Java. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của từng mục tiêu java_binary.
--legacy_main_dex_list_generator=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng tạo danh sách các lớp phải có trong dex chính khi biên dịch multidex cũ.
--optimizing_dexer=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng cho việc lập chỉ mục dex mà không cần phân đoạn.
--plugin=<a build target label>
nhiều mục đích sử dụng được tích luỹ- Các trình bổ trợ cần dùng trong bản dựng. Hiện hoạt động với java_plugin.
--proguard_top=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định phiên bản ProGuard sẽ dùng để xoá mã khi tạo một tệp nhị phân Java.
--proto_compiler=<a build target label>
mặc định: "@bazel_tools//tools/proto:protoc"-
Nhãn của trình biên dịch proto.
Thẻ:affects_outputs
,loading_and_analysis
--[no]proto_profile
mặc định: "true"- Có nên truyền profile_path đến trình biên dịch proto hay không.
Thẻ:affects_outputs
,loading_and_analysis
--proto_profile_path=<a build target label>
mặc định: xem nội dung mô tả-
Hồ sơ cần truyền đến trình biên dịch proto dưới dạng profile_path. Nếu bạn không đặt, nhưng --proto_profile là true (mặc định), thì sẽ suy ra đường dẫn từ --fdo_optimize.
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_cc=<a build target label>
default: "@bazel_tools//tools/proto:cc_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch proto C++
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_j2objc=<a build target label>
mặc định: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức j2objc
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_java=<a build target label>
mặc định: "@bazel_tools//tools/proto:java_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức Java
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_javalite=<a build target label>
mặc định: "@bazel_tools//tools/proto:javalite_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức JavaLite
Thẻ:affects_outputs
,loading_and_analysis
--protocopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch protobuf.
Thẻ:affects_outputs
--[no]runs_per_test_detects_flakes
mặc định: "false"- Nếu đúng, mọi phân đoạn có ít nhất một lần chạy/thử nghiệm thành công và ít nhất một lần chạy/thử nghiệm thất bại sẽ có trạng thái FLAKY.
--shell_executable=<a path>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối đến tệp thực thi shell mà Bazel sẽ dùng. Nếu bạn không đặt biến này, nhưng biến môi trường BAZEL_SH được đặt trong lệnh gọi Bazel đầu tiên (khởi động một máy chủ Bazel), thì Bazel sẽ sử dụng biến đó. Nếu bạn không đặt cả hai, Bazel sẽ sử dụng đường dẫn mặc định được mã hoá cứng, tuỳ thuộc vào hệ điều hành mà Bazel chạy trên đó (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, tất cả các hệ điều hành khác: /bin/bash). Xin lưu ý rằng việc sử dụng một trình bao không tương thích với bash có thể dẫn đến lỗi bản dựng hoặc lỗi thời gian chạy của các tệp nhị phân đã tạo.
Thẻ:loading_and_analysis
--test_arg=<a string>
nhiều mục đích sử dụng được tích luỹ- Chỉ định các lựa chọn và đối số bổ sung cần được truyền đến tệp thực thi kiểm thử. Có thể dùng nhiều lần để chỉ định một số đối số. Nếu nhiều kiểm thử được thực thi, mỗi kiểm thử sẽ nhận được các đối số giống hệt nhau. Chỉ được dùng bằng lệnh "bazel test".
--test_filter=<a string>
mặc định: xem nội dung mô tả- Chỉ định một bộ lọc để chuyển tiếp đến khung kiểm thử. Dùng để giới hạn số lượng bài kiểm thử được chạy. Xin lưu ý rằng điều này không ảnh hưởng đến những mục tiêu được tạo.
--test_result_expiration=<an integer>
mặc định: "-1"- Tuỳ chọn này không được dùng nữa và không có hiệu lực.
--[no]test_runner_fail_fast
mặc định: "false"- Chuyển tiếp lựa chọn thất bại nhanh đến trình chạy kiểm thử. Trình chạy kiểm thử sẽ dừng thực thi khi gặp lỗi đầu tiên.
--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce>
mặc định: "explicit"- Chỉ định chiến lược phân đoạn kiểm thử: "explicit" để chỉ sử dụng tính năng phân đoạn nếu có thuộc tính BUILD "shard_count". "disabled" để không bao giờ sử dụng tính năng phân đoạn kiểm thử. "forced=k" để thực thi "k" phân đoạn để kiểm thử bất kể thuộc tính BUILD "shard_count".
--tool_java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java dùng để thực thi các công cụ cần thiết trong quá trình tạo
--tool_java_runtime_version=<a string>
default: "remotejdk_11"- Phiên bản thời gian chạy Java được dùng để thực thi các công cụ trong quá trình tạo
--[no]use_ijars
mặc định: "true"- Nếu được bật, lựa chọn này sẽ khiến quá trình biên dịch Java sử dụng các tệp jar giao diện. Điều này sẽ giúp tăng tốc độ biên dịch gia tăng, nhưng thông báo lỗi có thể khác.
Tuỳ chọn bản dựng
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]check_up_to_date
mặc định: "false"-
Không thực hiện bản dựng, chỉ kiểm tra xem bản dựng có phải là phiên bản mới nhất hay không. Nếu tất cả các mục tiêu đều được cập nhật, thì quá trình tạo sẽ hoàn tất thành công. Nếu cần thực hiện bất kỳ bước nào, thì lỗi sẽ được báo cáo và bản dựng sẽ không thành công.
Thẻ:execution
--dynamic_local_execution_delay=<an integer>
mặc định: "1000"-
Nếu quá trình thực thi từ xa nhanh hơn trong quá trình tạo ít nhất một lần, thì quá trình thực thi cục bộ nên bị trì hoãn bao nhiêu mili giây?
Thẻ:execution
,host_machine_resource_optimizations
--dynamic_local_strategy=<a '[name=]value1[,..,valueN]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Các chiến lược cục bộ (theo thứ tự) để sử dụng cho từ khoá đã cho – chiến lược áp dụng đầu tiên sẽ được sử dụng. Ví dụ: `worker,sandboxed` chạy các thao tác hỗ trợ worker liên tục bằng chiến lược worker và tất cả các thao tác khác bằng chiến lược sandboxed. Nếu không có từ khoá ghi nhớ nào được cung cấp, thì danh sách chiến lược sẽ được dùng làm phương án dự phòng cho tất cả các từ khoá ghi nhớ. Danh sách dự phòng mặc định là "worker,sandboxed" hoặc "worker,sandboxed,standalone" nếu bạn đặt "experimental_local_lockfree_output". Lấy [mnemonic=]local_strategy[,local_strategy,...]
Thẻ:execution
,host_machine_resource_optimizations
--dynamic_remote_strategy=<a '[name=]value1[,..,valueN]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Các chiến lược từ xa (theo thứ tự) để sử dụng cho mã nhớ đã cho – chiến lược áp dụng đầu tiên sẽ được sử dụng. Nếu không có từ khoá ghi nhớ nào được cung cấp, thì danh sách chiến lược sẽ được dùng làm phương án dự phòng cho tất cả các từ khoá ghi nhớ. Danh sách dự phòng mặc định là "từ xa", vì vậy, bạn thường không cần đặt cờ này một cách rõ ràng. Lấy [mnemonic=]remote_strategy[,remote_strategy,...]
Thẻ:execution
,host_machine_resource_optimizations
--experimental_docker_image=<a string>
mặc định: ""-
Chỉ định tên hình ảnh Docker (ví dụ: "ubuntu:latest") sẽ được dùng để thực thi một thao tác được cách ly khi sử dụng chiến lược docker và bản thân thao tác đó chưa có thuộc tính container-image trong remote_execution_properties trong phần mô tả nền tảng. Giá trị của cờ này được truyền nguyên văn đến "docker run", vì vậy, cờ này hỗ trợ cùng một cú pháp và cơ chế như chính Docker.
Thẻ:execution
--[no]experimental_docker_use_customized_images
mặc định: "true"-
Nếu được bật, sẽ chèn uid và gid của người dùng hiện tại vào hình ảnh Docker trước khi sử dụng. Bạn cần phải có thông tin này nếu bản dựng / các bài kiểm thử của bạn phụ thuộc vào việc người dùng có tên và thư mục gốc bên trong vùng chứa. Tính năng này được bật theo mặc định, nhưng bạn có thể tắt nếu tính năng tuỳ chỉnh hình ảnh tự động không hoạt động trong trường hợp của bạn hoặc bạn biết rằng bạn không cần tính năng này.
Thẻ:execution
--[no]experimental_dynamic_exclude_tools
mặc định: "true"-
Khi được đặt, các mục tiêu được tạo "cho công cụ" sẽ không phải chịu sự thực thi động. Những mục tiêu như vậy rất khó được xây dựng từng bước và do đó không đáng để dành thời gian cho các chu kỳ địa phương.
Thẻ:execution
,host_machine_resource_optimizations
--experimental_dynamic_local_load_factor=<a double>
mặc định: "0"-
Kiểm soát mức tải từ quá trình thực thi động lên máy cục bộ. Cờ này điều chỉnh số lượng thao tác trong quá trình thực thi động mà chúng ta sẽ lên lịch đồng thời. Giá trị này dựa trên số lượng CPU mà Blaze cho là có sẵn, bạn có thể kiểm soát số lượng này bằng cờ --local_cpu_resources.
Nếu cờ này là 0, tất cả các thao tác sẽ được lên lịch ngay lập tức ở cấp cục bộ. Nếu > 0, số lượng thao tác được lên lịch cục bộ sẽ bị giới hạn bởi số lượng CPU có sẵn. Nếu < 1, hệ số tải được dùng để giảm số lượng thao tác được lên lịch cục bộ khi số lượng thao tác đang chờ lên lịch cao. Điều này giúp giảm tải cho máy cục bộ trong trường hợp bản dựng sạch, trong đó máy cục bộ không đóng góp nhiều.
Thẻ:execution
,host_machine_resource_optimizations
--experimental_dynamic_slow_remote_time=<An immutable length of time.>
mặc định: "0"-
Nếu > 0, thì thời gian mà một thao tác chạy động phải chỉ chạy từ xa trước khi chúng ta ưu tiên việc thực thi cục bộ để tránh hết thời gian chờ từ xa. Điều này có thể che giấu một số vấn đề trên hệ thống thực thi từ xa. Không bật tính năng này nếu không giám sát các vấn đề về việc thực thi từ xa.
Thẻ:execution
,host_machine_resource_optimizations
--[no]experimental_enable_docker_sandbox
mặc định: "false"-
Bật tính năng tạo hộp cát dựa trên Docker. Lựa chọn này không có hiệu lực nếu bạn chưa cài đặt Docker.
Thẻ:execution
--[no]experimental_inmemory_sandbox_stashes
mặc định: "false"-
Nếu bạn đặt chính sách này thành true, nội dung của các hộp cát được lưu trữ để reuse_sandbox_directories sẽ được theo dõi trong bộ nhớ. Điều này giúp giảm lượng hoạt động đầu vào/đầu ra cần thiết trong quá trình sử dụng lại. Tuỳ thuộc vào bản dựng, cờ này có thể cải thiện thời gian thực. Tuỳ thuộc vào bản dựng, cờ này có thể sử dụng một lượng đáng kể bộ nhớ bổ sung.
Thẻ:host_machine_resource_optimizations
,execution
--experimental_sandbox_async_tree_delete_idle_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "4"-
Nếu là 0, hãy xoá các cây hộp cát ngay khi một thao tác hoàn tất (khiến thao tác hoàn tất bị trì hoãn). Nếu lớn hơn 0, hãy thực thi việc xoá các tệp này trên một nhóm luồng không đồng bộ có kích thước là 1 khi bản dựng đang chạy và tăng lên kích thước được chỉ định bằng cờ này khi máy chủ ở trạng thái rảnh.
Thẻ:host_machine_resource_optimizations
,execution
--experimental_sandbox_enforce_resources_regexp=<a valid Java regular expression>
mặc định: ""-
Nếu đặt là true, những thao tác có mã ghi nhớ khớp với biểu thức chính quy đầu vào sẽ có yêu cầu về tài nguyên được thực thi dưới dạng hạn mức, ghi đè giá trị của --experimental_sandbox_limits, nếu loại tài nguyên hỗ trợ thao tác đó. Ví dụ: một kiểm thử khai báo cpu:3 và resources:memory:10 sẽ chạy với tối đa 3 cpu và 10 megabyte bộ nhớ.
Thẻ:execution
--experimental_sandbox_limits=<a named double, 'name=value', where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
nhiều mục đích sử dụng được tích luỹ-
Nếu > 0, mỗi hộp cát Linux sẽ bị giới hạn ở số lượng đã cho đối với tài nguyên được chỉ định. Yêu cầu --incompatible_use_new_cgroup_implementation và ghi đè --experimental_sandbox_memory_limit_mb. Yêu cầu cgroups phiên bản 1 hoặc 2 và quyền cho người dùng đối với thư mục cgroups.
Thẻ:execution
--experimental_sandbox_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.>
mặc định: "0"-
Nếu > 0, mỗi hộp cát Linux sẽ bị giới hạn ở lượng bộ nhớ nhất định (tính bằng MB). Yêu cầu cgroups phiên bản 1 hoặc 2 và quyền cho người dùng đối với thư mục cgroups.
Thẻ:execution
--[no]experimental_shrink_worker_pool
mặc định: "false"-
Nếu được bật, có thể giảm nhóm worker nếu áp lực bộ nhớ worker cao. Cờ này chỉ hoạt động khi bạn bật cờ experimental_total_worker_memory_limit_mb.
Thẻ:execution
,host_machine_resource_optimizations
--[no]experimental_split_xml_generation
mặc định: "true"-
Nếu cờ này được đặt và một thao tác kiểm thử không tạo ra tệp test.xml, thì Bazel sẽ sử dụng một thao tác riêng biệt để tạo tệp test.xml giả chứa nhật ký kiểm thử. Nếu không, Bazel sẽ tạo một test.xml trong quá trình kiểm thử.
Thẻ:execution
--experimental_total_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.>
mặc định: "0"-
Nếu giới hạn này lớn hơn 0, các worker không hoạt động có thể bị huỷ nếu tổng mức sử dụng bộ nhớ của tất cả các worker vượt quá giới hạn.
Thẻ:execution
,host_machine_resource_optimizations
--[no]experimental_use_hermetic_linux_sandbox
mặc định: "false"-
Nếu bạn đặt thành true, thì đừng gắn gốc, chỉ gắn những gì được cung cấp bằng sandbox_add_mount_pair. Tệp đầu vào sẽ được liên kết cứng với hộp cát thay vì được liên kết tượng trưng từ hộp cát. Nếu các tệp đầu vào của thao tác nằm trên một hệ thống tệp khác với hộp cát, thì các tệp đầu vào sẽ được sao chép thay vì di chuyển.
Thẻ:execution
--[no]experimental_use_semaphore_for_jobs
mặc định: "true"-
Nếu bạn đặt thành true, hãy sử dụng thêm semaphore để giới hạn số lượng công việc đồng thời.
Thẻ:host_machine_resource_optimizations
,execution
--[no]experimental_use_windows_sandbox
mặc định: "false"-
Sử dụng hộp cát Windows để chạy các thao tác. Nếu là "có", thì tệp nhị phân do --experimental_windows_sandbox_path cung cấp phải hợp lệ và tương ứng với một phiên bản được hỗ trợ của sandboxfs. Nếu là "auto", thì có thể tệp nhị phân bị thiếu hoặc không tương thích.
Thẻ:execution
--experimental_windows_sandbox_path=<a string>
default: "BazelSandbox.exe"-
Đường dẫn đến tệp nhị phân hộp cát Windows để sử dụng khi --experimental_use_windows_sandbox là true. Nếu là tên đơn giản, hãy dùng tệp nhị phân đầu tiên của tên đó có trong PATH.
Thẻ:execution
--experimental_worker_allowlist=<comma-separated set of options>
mặc định: xem nội dung mô tả-
Nếu không trống, chỉ cho phép sử dụng các worker liên tục với từ khoá worker đã cho.
Thẻ:execution
,host_machine_resource_optimizations
--[no]experimental_worker_cancellation
mặc định: "false"-
Nếu được bật, Bazel có thể gửi yêu cầu huỷ đến những worker hỗ trợ yêu cầu đó.
Thẻ:execution
--experimental_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.>
mặc định: "0"-
Nếu hạn mức này lớn hơn 0, thì các worker có thể bị huỷ nếu mức sử dụng bộ nhớ của worker vượt quá hạn mức. Nếu không được dùng cùng với tính năng thực thi động và `--experimental_dynamic_ignore_local_signals=9`, thì thao tác này có thể khiến bản dựng của bạn gặp sự cố.
Thẻ:execution
,host_machine_resource_optimizations
--experimental_worker_metrics_poll_interval=<An immutable length of time.>
mặc định: "5 giây"-
Khoảng thời gian giữa việc thu thập các chỉ số về worker và có thể cố gắng loại bỏ. Không được nhỏ hơn 1 giây vì lý do hiệu suất.
Thẻ:execution
,host_machine_resource_optimizations
--[no]experimental_worker_multiplex_sandboxing
mặc định: "false"-
Nếu được bật, các worker ghép kênh có yêu cầu thực thi "supports-multiplex-sandboxing" sẽ chạy trong một môi trường hộp cát, sử dụng một thư mục hộp cát riêng cho mỗi yêu cầu công việc. Các worker ghép kênh có yêu cầu thực thi luôn được đưa vào hộp cát khi chạy theo chiến lược thực thi động, bất kể cờ này.
Thẻ:execution
--[no]experimental_worker_sandbox_hardening
mặc định: "false"-
Nếu được bật, các worker sẽ chạy trong một hộp cát được tăng cường bảo mật, nếu quá trình triển khai cho phép. Nếu tính năng tăng cường bảo mật được bật, thì các thư mục tmp sẽ khác nhau đối với các worker khác nhau.
Thẻ:execution
--experimental_worker_sandbox_inmemory_tracking=<a string>
nhiều mục đích sử dụng được tích luỹ-
Một từ khoá gợi nhớ khoá của worker mà nội dung của thư mục hộp cát được theo dõi trong bộ nhớ. Điều này có thể cải thiện hiệu suất bản dựng nhưng sẽ tốn thêm bộ nhớ. Chỉ ảnh hưởng đến các worker được cách ly. Có thể được chỉ định nhiều lần cho các từ khoá khác nhau.
Thẻ:execution
--[no]experimental_worker_strict_flagfiles
mặc định: "false"-
Nếu được bật, đối số hành động cho những worker không tuân theo quy cách worker sẽ gây ra lỗi. Đối số của worker phải có đúng một đối số @flagfile ở cuối danh sách đối số.
Thẻ:execution
--genrule_strategy=<comma-separated list of options>
mặc định: ""-
Chỉ định cách thực thi genrules. Cờ này sẽ ngừng hoạt động. Thay vào đó, hãy sử dụng --spawn_strategy=<value> để kiểm soát tất cả các thao tác hoặc --strategy=Genrule=<value> để chỉ kiểm soát các genrule.
Thẻ:execution
--[no]incompatible_sandbox_hermetic_tmp
mặc định: "true"-
Nếu được đặt thành true, mỗi hộp cát Linux sẽ có thư mục trống riêng biệt được gắn dưới dạng /tmp thay vì chia sẻ /tmp với hệ thống tệp của máy chủ. Sử dụng --sandbox_add_mount_pair=/tmp để tiếp tục thấy /tmp của máy chủ lưu trữ trong tất cả các hộp cát.
Thẻ:execution
--[no]incompatible_use_new_cgroup_implementation
mặc định: "false"-
Nếu đúng, hãy sử dụng quy trình triển khai mới cho cgroup. Cách triển khai cũ chỉ hỗ trợ bộ điều khiển bộ nhớ và bỏ qua giá trị của --experimental_sandbox_limits.
Thẻ:execution
--[no]internal_spawn_scheduler
mặc định: "true"-
Lựa chọn giữ chỗ để chúng tôi có thể biết trong Blaze liệu trình lập lịch tạo có được bật hay không.
Thẻ:execution
,host_machine_resource_optimizations
--jobs=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
[-j
] mặc định: "auto"-
Số lượng công việc đồng thời cần chạy. Lấy một số nguyên hoặc một từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn: "auto", "HOST_CPUS*.5". Giá trị phải nằm trong khoảng từ 1 đến 5000. Các giá trị trên 2500 có thể gây ra vấn đề về bộ nhớ. "auto" tính toán một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ.
Thẻ:host_machine_resource_optimizations
,execution
--[no]keep_going
[-k
] mặc định: "false"-
Tiếp tục càng nhiều càng tốt sau khi xảy ra lỗi. Mặc dù không thể phân tích mục tiêu không thành công và những mục tiêu phụ thuộc vào mục tiêu đó, nhưng bạn có thể phân tích các điều kiện tiên quyết khác của những mục tiêu này.
Thẻ:eagerness_to_exit
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
--[no]reuse_sandbox_directories
mặc định: "true"-
Nếu được đặt thành true, các thư mục được dùng bởi quá trình thực thi không phải worker trong hộp cát có thể được dùng lại để tránh các chi phí thiết lập không cần thiết.
Thẻ:host_machine_resource_optimizations
,execution
--sandbox_base=<a string>
mặc định: ""-
Cho phép hộp cát tạo các thư mục hộp cát bên dưới đường dẫn này. Chỉ định một đường dẫn trên tmpfs (chẳng hạn như /run/shm) để có thể cải thiện đáng kể hiệu suất khi bản dựng / các kiểm thử của bạn có nhiều tệp đầu vào. Lưu ý: Bạn cần có đủ RAM và dung lượng trống trên tmpfs để lưu trữ các tệp đầu ra và tệp trung gian do các thao tác đang chạy tạo ra.
Thẻ:host_machine_resource_optimizations
,execution
--[no]sandbox_explicit_pseudoterminal
mặc định: "false"-
Cho phép rõ ràng việc tạo các thiết bị đầu cuối giả cho các thao tác trong hộp cát. Một số bản phân phối Linux yêu cầu đặt mã nhận dạng nhóm của quy trình thành "tty" bên trong hộp cát để các thiết bị đầu cuối giả lập hoạt động. Nếu điều này gây ra vấn đề, bạn có thể tắt cờ này để cho phép sử dụng các nhóm khác.
Thẻ:execution
--sandbox_tmpfs_path=<an absolute path>
nhiều mục đích sử dụng được tích luỹ-
Đối với các thao tác trong hộp cát, hãy gắn một thư mục trống, có thể ghi vào đường dẫn tuyệt đối này (nếu được phương thức triển khai hộp cát hỗ trợ, nếu không thì sẽ bị bỏ qua).
Thẻ:host_machine_resource_optimizations
,execution
--[no]skip_incompatible_explicit_targets
mặc định: "false"-
Bỏ qua các mục tiêu không tương thích được liệt kê rõ ràng trên dòng lệnh. Theo mặc định, việc tạo các mục tiêu như vậy sẽ dẫn đến lỗi nhưng chúng sẽ bị bỏ qua một cách âm thầm khi bạn bật lựa chọn này. Xem: https://bazel.build/extending/platforms#skipping-incompatible-targets
Thẻ:loading_and_analysis
--spawn_strategy=<comma-separated list of options>
mặc định: ""-
Chỉ định cách thực thi các thao tác tạo theo mặc định. Chấp nhận danh sách chiến lược được phân tách bằng dấu phẩy theo thứ tự ưu tiên từ cao nhất đến thấp nhất. Đối với mỗi thao tác, Bazel sẽ chọn chiến lược có mức độ ưu tiên cao nhất có thể thực thi thao tác đó. Giá trị mặc định là "remote,worker,sandboxed,local". Hãy xem https://blog.bazel.build/2019/06/19/list-strategy.html để biết thông tin chi tiết.
Thẻ:execution
--strategy=<a '[name=]value1[,..,valueN]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định cách phân phối quá trình biên dịch các thao tác tạo khác. Chấp nhận danh sách chiến lược được phân tách bằng dấu phẩy theo thứ tự ưu tiên từ cao nhất đến thấp nhất. Đối với mỗi thao tác, Bazel sẽ chọn chiến lược có mức độ ưu tiên cao nhất có thể thực thi thao tác đó. Giá trị mặc định là "remote,worker,sandboxed,local". Cờ này ghi đè các giá trị do --spawn_strategy đặt (và --genrule_strategy nếu được dùng với Genrule gợi nhớ). Hãy xem https://blog.bazel.build/2019/06/19/list-strategy.html để biết thông tin chi tiết.
Thẻ:execution
--strategy_regexp=<a '<RegexFilter>=value[,value]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Ghi đè chiến lược tạo nào sẽ được dùng để thực thi các hành động tạo có nội dung mô tả khớp với một regex_filter nhất định. Hãy xem --per_file_copt để biết thông tin chi tiết về tính năng so khớp regex_filter. regex_filter cuối cùng khớp với nội dung mô tả sẽ được dùng. Tuỳ chọn này sẽ ghi đè các cờ khác để chỉ định chiến lược. Ví dụ: --strategy_regexp=//foo.*\.cc,-//foo/bar=local có nghĩa là chạy các thao tác bằng cách sử dụng chiến lược cục bộ nếu nội dung mô tả của các thao tác đó khớp với //foo.*.cc nhưng không khớp với //foo/bar. Ví dụ: --strategy_regexp='Compiling.*/bar=local --strategy_regexp=Compiling=sandboxed sẽ chạy "Compiling //foo/bar/baz" bằng chiến lược "local", nhưng nếu đảo ngược thứ tự, thì chiến lược này sẽ chạy bằng "sandboxed".
Thẻ:execution
--worker_extra_flag=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Các cờ lệnh bổ sung sẽ được truyền đến các quy trình worker ngoài --persistent_worker, được khoá bằng từ viết tắt (ví dụ: --worker_extra_flag=Javac=--debug.
Thẻ:execution
,host_machine_resource_optimizations
--worker_max_instances=<[name=]value, where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
nhiều mục đích sử dụng được tích luỹ-
Có thể khởi chạy bao nhiêu phiên bản của từng loại worker liên tục nếu bạn sử dụng chiến lược "worker". Có thể được chỉ định là [name=value] để đưa ra một giá trị khác cho mỗi từ khoá. Hạn mức này dựa trên khoá worker, được phân biệt dựa trên từ khoá gợi nhớ, nhưng cũng dựa trên cờ khởi động và môi trường. Do đó, trong một số trường hợp, có thể có nhiều worker hơn cho mỗi từ khoá gợi nhớ so với số lượng mà cờ này chỉ định. Lấy một số nguyên hoặc một từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn: "auto", "HOST_CPUS*.5". "auto" tính toán một giá trị mặc định hợp lý dựa trên dung lượng của máy. "=value" đặt giá trị mặc định cho các từ khoá chưa chỉ định.
Thẻ:execution
,host_machine_resource_optimizations
--worker_max_multiplex_instances=<[name=]value, where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
nhiều mục đích sử dụng được tích luỹ-
Số lượng WorkRequest mà một quy trình worker đa hợp có thể nhận được song song nếu bạn sử dụng chiến lược "worker" với --worker_multiplex. Có thể được chỉ định là [name=value] để đưa ra một giá trị khác cho mỗi từ khoá. Hạn mức này dựa trên khoá worker, được phân biệt dựa trên từ khoá gợi nhớ, nhưng cũng dựa trên cờ khởi động và môi trường. Do đó, trong một số trường hợp, có thể có nhiều worker hơn cho mỗi từ khoá gợi nhớ so với số lượng mà cờ này chỉ định. Lấy một số nguyên hoặc một từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn: "auto", "HOST_CPUS*.5". "auto" tính toán một giá trị mặc định hợp lý dựa trên dung lượng của máy. "=value" đặt giá trị mặc định cho các từ khoá chưa chỉ định.
Thẻ:execution
,host_machine_resource_optimizations
--[no]worker_multiplex
mặc định: "true"-
Nếu được bật, các worker sẽ sử dụng tính năng ghép kênh nếu chúng hỗ trợ tính năng này.
Thẻ:execution
,host_machine_resource_optimizations
--[no]worker_quit_after_build
mặc định: "false"-
Nếu được bật, tất cả các worker sẽ thoát sau khi quá trình tạo hoàn tất.
Thẻ:execution
,host_machine_resource_optimizations
--[no]worker_sandboxing
mặc định: "false"-
Nếu được bật, các worker đơn công sẽ chạy trong môi trường hộp cát. Các worker Singleplex luôn được đưa vào hộp cát khi chạy theo chiến lược thực thi động, bất kể cờ này.
Thẻ:execution
--[no]worker_verbose
mặc định: "false"- Nếu được bật, sẽ in các thông báo chi tiết khi các worker được khởi động, tắt, ...
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]build
mặc định: "true"-
Thực thi bản dựng; đây là hành vi thông thường. Việc chỉ định --nobuild khiến bản dựng dừng trước khi thực thi các thao tác xây dựng, trả về 0 nếu các giai đoạn tải và phân tích gói hoàn tất thành công; chế độ này hữu ích cho việc kiểm thử các giai đoạn đó.
Thẻ:execution
,affects_outputs
--[no]experimental_use_validation_aspect
mặc định: "false"-
Có chạy các thao tác xác thực bằng khía cạnh hay không (để song song với các kiểm thử).
Thẻ:execution
,affects_outputs
--output_groups=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách tên nhóm đầu ra được phân tách bằng dấu phẩy, mỗi tên có thể có tiền tố là + hoặc -. Nhóm có tiền tố là + sẽ được thêm vào tập hợp nhóm đầu ra mặc định, trong khi nhóm có tiền tố là - sẽ bị xoá khỏi tập hợp mặc định. Nếu ít nhất một nhóm không có tiền tố, thì tập hợp nhóm đầu ra mặc định sẽ bị bỏ qua. Ví dụ: --output_groups=+foo,+bar sẽ tạo bản dựng kết hợp của tập hợp mặc định, foo và bar, trong khi --output_groups=foo,bar sẽ ghi đè tập hợp mặc định để chỉ tạo foo và bar.
Thẻ:execution
,affects_outputs
--[no]run_validations
mặc định: "true"-
Có chạy các thao tác xác thực trong quá trình tạo hay không. Xem https://bazel.build/extending/rules#validation_actions
Thẻ:execution
,affects_outputs
--serialized_frontier_profile=<a string>
mặc định: ""-
Kết xuất hồ sơ của các byte biên tuần tự. Chỉ định đường dẫn đầu ra.
Thẻ:bazel_monitoring
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, chứ không phải sự tồn tại của đầu ra:
--aspects=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Danh sách các khía cạnh được phân tách bằng dấu phẩy sẽ được áp dụng cho các mục tiêu cấp cao nhất. Trong danh sách, nếu khía cạnh some_aspect chỉ định các nhà cung cấp khía cạnh bắt buộc thông qua required_aspect_providers, thì some_aspect sẽ chạy sau mọi khía cạnh đã được đề cập trước đó trong danh sách khía cạnh mà các nhà cung cấp được quảng cáo của khía cạnh đó đáp ứng các nhà cung cấp khía cạnh bắt buộc của some_aspect. Hơn nữa, some_aspect sẽ chạy sau khi tất cả các khía cạnh bắt buộc của nó được chỉ định bằng thuộc tính requires. Sau đó, some_aspect sẽ có quyền truy cập vào các giá trị của nhà cung cấp các khía cạnh đó. <bzl-file-label>%<aspect_name>, ví dụ: "//tools:my_def.bzl%my_aspect", trong đó "my_aspect" là giá trị cấp cao nhất từ tệp tools/my_def.bzl
--bep_maximum_open_remote_upload_files=<an integer>
mặc định: "-1"-
Số lượng tệp đang mở tối đa được phép trong quá trình tải cấu phần phần mềm BEP lên.
Thẻ:affects_outputs
--[no]experimental_convenience_symlinks
mặc định: "normal"-
Cờ này kiểm soát cách các đường liên kết tượng trưng thuận tiện (các đường liên kết tượng trưng xuất hiện trong không gian làm việc sau bản dựng) sẽ được quản lý. Các giá trị có thể có:
normal (mặc định): Mỗi loại symlink tiện lợi sẽ được tạo hoặc xoá, tuỳ theo bản dựng.
clean: Tất cả các symlink sẽ bị xoá vô điều kiện.
ignore: Các đường liên kết tượng trưng sẽ không được tạo hoặc dọn dẹp.
log_only: Tạo thông báo nhật ký như thể đã truyền "normal", nhưng thực tế không thực hiện bất kỳ thao tác nào trên hệ thống tệp (hữu ích cho các công cụ).
Xin lưu ý rằng chỉ những symlink có tên do giá trị hiện tại của --symlink_prefix tạo ra mới có thể bị ảnh hưởng; nếu tiền tố thay đổi, mọi symlink đã tồn tại trước đó sẽ không bị ảnh hưởng.
Thẻ:affects_outputs
--[no]experimental_convenience_symlinks_bep_event
mặc định: "true"-
Cờ này kiểm soát việc chúng ta có đăng sự kiện bản dựng ConvenienceSymlinksIdentified lên BuildEventProtocol hay không. Nếu giá trị là true, BuildEventProtocol sẽ có một mục cho convenienceSymlinksIdentified, liệt kê tất cả các symlink tiện lợi được tạo trong không gian làm việc của bạn. Nếu là false, thì mục convenienceSymlinksIdentified trong BuildEventProtocol sẽ trống.
Thẻ:affects_outputs
--remote_download_all
-
Tải tất cả đầu ra từ xa xuống thiết bị. Cờ này là một bí danh cho --remote_download_outputs=all.
Mở rộng thành:
--remote_download_outputs=all
Thẻ:affects_outputs
--remote_download_minimal
-
Không tải bất kỳ đầu ra bản dựng từ xa nào xuống thiết bị cục bộ. Cờ này là một bí danh cho --remote_download_outputs=minimal.
Mở rộng thành:
--remote_download_outputs=minimal
Thẻ:affects_outputs
--remote_download_outputs=<all, minimal or toplevel>
mặc định: "toplevel"-
Nếu được đặt thành "minimal" (tối thiểu), thì sẽ không tải bất kỳ đầu ra bản dựng từ xa nào xuống máy cục bộ, ngoại trừ những đầu ra cần thiết cho các thao tác cục bộ. Nếu được đặt thành "toplevel", thì sẽ hoạt động như "minimal" ngoại trừ việc nó cũng tải đầu ra của các mục tiêu cấp cao nhất xuống máy cục bộ. Cả hai lựa chọn này đều có thể giảm đáng kể thời gian xây dựng nếu băng thông mạng là một điểm nghẽn.
Thẻ:affects_outputs
--remote_download_symlink_template=<a string>
mặc định: ""-
Thay vì tải đầu ra của bản dựng từ xa xuống máy cục bộ, hãy tạo các đường liên kết tượng trưng. Bạn có thể chỉ định đích của các đường liên kết tượng trưng dưới dạng một chuỗi mẫu. Chuỗi mẫu này có thể chứa {hash} và {size_bytes} lần lượt mở rộng thành hàm băm của đối tượng và kích thước tính bằng byte. Ví dụ: các đường liên kết tượng trưng này có thể trỏ đến một hệ thống tệp FUSE tải các đối tượng từ CAS theo yêu cầu.
Thẻ:affects_outputs
--remote_download_toplevel
-
Chỉ tải đầu ra từ xa của các mục tiêu cấp cao nhất xuống thiết bị. Cờ này là một tên thay thế cho --remote_download_outputs=toplevel.
Mở rộng thành:
--remote_download_outputs=toplevel
Thẻ:affects_outputs
--symlink_prefix=<a string>
mặc định: xem nội dung mô tả-
Tiền tố được thêm vào bất kỳ đường liên kết tượng trưng tiện lợi nào được tạo sau bản dựng. Nếu bạn bỏ qua, giá trị mặc định sẽ là tên của công cụ tạo bản dựng, theo sau là dấu gạch ngang. Nếu bạn truyền "/", thì sẽ không có symlink nào được tạo và không có cảnh báo nào được phát ra. Cảnh báo: chức năng đặc biệt cho '/' sẽ sớm không được dùng nữa; thay vào đó, hãy dùng --experimental_convenience_symlinks=ignore.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]experimental_docker_privileged
mặc định: "false"-
Nếu được bật, Bazel sẽ truyền cờ --privileged đến "docker run" khi chạy các thao tác. Bản dựng của bạn có thể yêu cầu điều này, nhưng điều này cũng có thể làm giảm tính khép kín.
Thẻ:execution
--[no]experimental_sandboxfs_map_symlink_targets
mặc định: "false"-
No-op
Thẻ:host_machine_resource_optimizations
,execution
--[no]incompatible_legacy_local_fallback
mặc định: "false"-
Nếu bạn đặt chính sách này thành true, thì chính sách này sẽ cho phép cơ chế dự phòng ngầm định cũ từ chiến lược hộp cát sang chiến lược cục bộ. Cờ này cuối cùng sẽ mặc định là false và sau đó trở thành một thao tác không có hiệu lực. Thay vào đó, hãy dùng --strategy, --spawn_strategy hoặc --dynamic_local_strategy để định cấu hình các phương án dự phòng.
Thẻ:execution
,incompatible_change
--sandbox_add_mount_pair=<a single path or a 'source:target' pair>
nhiều mục đích sử dụng được tích luỹ-
Thêm cặp đường dẫn bổ sung để gắn trong hộp cát.
Thẻ:execution
--sandbox_block_path=<a string>
nhiều mục đích sử dụng được tích luỹ-
Đối với các thao tác trong hộp cát, hãy không cho phép truy cập vào đường dẫn này.
Thẻ:execution
--[no]sandbox_default_allow_network
mặc định: "true"-
Cho phép truy cập mạng theo mặc định cho các thao tác; điều này có thể không hoạt động với tất cả các cách triển khai hộp cát.
Thẻ:execution
--[no]sandbox_fake_hostname
mặc định: "false"-
Thay đổi tên máy chủ hiện tại thành "localhost" cho các thao tác trong hộp cát.
Thẻ:execution
--[no]sandbox_fake_username
mặc định: "false"-
Thay đổi tên người dùng hiện tại thành "nobody" cho các thao tác trong hộp cát.
Thẻ:execution
--sandbox_writable_path=<a string>
nhiều mục đích sử dụng được tích luỹ-
Đối với các thao tác trong hộp cát, hãy tạo một thư mục hiện có có thể ghi trong hộp cát (nếu được triển khai hộp cát hỗ trợ, nếu không thì sẽ bị bỏ qua).
Thẻ:execution
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]check_tests_up_to_date
mặc định: "false"-
Không chạy kiểm thử, chỉ kiểm tra xem các kiểm thử đó có phải là phiên bản mới nhất hay không. Nếu tất cả kết quả kiểm thử đều mới nhất, thì quá trình kiểm thử sẽ hoàn tất thành công. Nếu cần tạo hoặc thực thi bất kỳ kiểm thử nào, thì sẽ có lỗi được báo cáo và quá trình kiểm thử không thành công. Tuỳ chọn này ngụ ý hành vi --check_up_to_date.
Thẻ:execution
--flaky_test_attempts=<a positive integer, the string "default", or test_regex@attempts. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lượt kiểm thử sẽ được thử lại tối đa số lần đã chỉ định trong trường hợp có bất kỳ lượt kiểm thử nào không thành công. Những kiểm thử cần nhiều lần thử mới vượt qua được sẽ được đánh dấu là "KHÔNG ỔN ĐỊNH" trong bản tóm tắt kiểm thử. Thông thường, giá trị được chỉ định chỉ là một số nguyên hoặc chuỗi "default". Nếu là một số nguyên, thì tất cả các kiểm thử sẽ chạy tối đa N lần. Nếu là "default", thì chỉ một lần thử nghiệm duy nhất sẽ được thực hiện cho các kiểm thử thông thường và ba lần cho các kiểm thử được đánh dấu rõ ràng là không ổn định theo quy tắc của chúng (thuộc tính flaky=1). Cú pháp thay thế: regex_filter@flaky_test_attempts. Trong đó, flaky_test_attempts như trên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --runs_per_test). Ví dụ: --flaky_test_attempts=//foo/.*,-//foo/bar/.*@3 sẽ loại bỏ mọi bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có gì trùng khớp, hành vi sẽ giống như "mặc định" ở trên.
Thẻ:execution
--local_test_jobs=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng tối đa các hoạt động kiểm thử cục bộ có thể chạy đồng thời. Lấy một số nguyên hoặc một từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn: "auto", "HOST_CPUS*.5". 0 có nghĩa là các tài nguyên cục bộ sẽ giới hạn số lượng công việc kiểm thử cục bộ được chạy đồng thời. Việc đặt giá trị này lớn hơn giá trị cho --jobs là không hiệu quả.
Thẻ:execution
--[no]test_keep_going
mặc định: "true"-
Khi bị vô hiệu hoá, mọi kiểm thử không đạt sẽ khiến toàn bộ bản dựng dừng lại. Theo mặc định, tất cả các bài kiểm thử đều được chạy, ngay cả khi một số bài kiểm thử không đạt.
Thẻ:execution
--test_strategy=<a string>
mặc định: ""-
Chỉ định chiến lược cần sử dụng khi chạy kiểm thử.
Thẻ:execution
--test_tmpdir=<a path>
mặc định: xem nội dung mô tả- Chỉ định thư mục tạm thời cơ sở để "bazel test" sử dụng.
- Các lựa chọn kích hoạt quá trình tối ưu hoá thời gian xây dựng:
--cache_computed_file_digests=<a long integer>
mặc định: "50000"- Nếu lớn hơn 0, hãy định cấu hình Bazel để lưu trữ các bản tóm tắt tệp vào bộ nhớ dựa trên siêu dữ liệu của tệp thay vì tính toán lại các bản tóm tắt từ đĩa mỗi khi cần. Việc đặt giá trị này thành 0 sẽ đảm bảo tính chính xác vì không phải mọi thay đổi đối với tệp đều có thể được ghi nhận từ siêu dữ liệu của tệp. Khi không phải là 0, số này cho biết kích thước của bộ nhớ đệm dưới dạng số lượng bản tóm tắt tệp cần lưu vào bộ nhớ đệm.
--[no]experimental_cpu_load_scheduling
mặc định: "false"-
Cho phép lập lịch thực thi cục bộ thử nghiệm dựa trên mức tải CPU, chứ không phải ước tính từng hành động. Việc lập lịch thử nghiệm đã cho thấy lợi ích lớn đối với các bản dựng cục bộ lớn trên các máy mạnh mẽ có số lượng lớn lõi. Bạn nên sử dụng với --local_resources=cpu=HOST_CPUS
Các thẻ:execution
--experimental_dynamic_ignore_local_signals=<a comma-separated list of signal numbers>
mặc định: xem nội dung mô tả-
Lấy danh sách các số tín hiệu của hệ điều hành. Nếu một nhánh cục bộ của quá trình thực thi động bị huỷ bằng bất kỳ tín hiệu nào trong số này, thì nhánh từ xa sẽ được phép hoàn tất. Đối với các worker liên tục, điều này chỉ ảnh hưởng đến những tín hiệu loại bỏ quy trình worker.
Thẻ:execution
--[no]experimental_enable_skyfocus
mặc định: "false"-
Nếu đúng, hãy cho phép sử dụng --experimental_working_set để giảm mức sử dụng bộ nhớ của Bazel cho các bản dựng gia tăng. Tính năng này có tên là Skyfocus.
Thẻ:host_machine_resource_optimizations
--experimental_working_set=<comma-separated list of options>
mặc định: ""-
Nhóm công việc cho Skyfocus. Chỉ định dưới dạng các đường dẫn tương đối của thư mục gốc không gian làm việc được phân tách bằng dấu phẩy. Đây là một cờ có trạng thái. Việc xác định một tập hợp đang hoạt động sẽ duy trì tập hợp đó cho các lệnh gọi tiếp theo, cho đến khi tập hợp đó được xác định lại bằng một tập hợp mới.
Thẻ:host_machine_resource_optimizations
--local_cpu_resources=<an integer, or "HOST_CPUS", optionally followed by [-|*]<float>.>
mặc định: "HOST_CPUS"-
Thiết lập rõ ràng tổng số lõi CPU cục bộ mà Bazel có thể sử dụng cho các thao tác xây dựng được thực thi cục bộ. Lấy một số nguyên hoặc "HOST_CPUS", có thể theo sau là [-|*]<float> (ví dụ: HOST_CPUS*.5 để sử dụng một nửa số lõi CPU có sẵn). Theo mặc định ("HOST_CPUS"), Bazel sẽ truy vấn cấu hình hệ thống để ước tính số lõi CPU có sẵn.
Thẻ:host_machine_resource_optimizations
--local_extra_resources=<a named float, 'name=value'>
nhiều mục đích sử dụng được tích luỹ-
Đặt số lượng tài nguyên bổ sung mà Bazel có thể sử dụng. Nhận một cặp chuỗi-số thực. Có thể dùng nhiều lần để chỉ định nhiều loại tài nguyên bổ sung. Bazel sẽ giới hạn số lượng thao tác chạy đồng thời dựa trên tài nguyên bổ sung hiện có và tài nguyên bổ sung cần thiết. Các kiểm thử có thể khai báo số lượng tài nguyên bổ sung cần thiết bằng cách sử dụng thẻ có định dạng "resources:<resoucename>:<amount>". Bạn không thể đặt CPU, RAM và tài nguyên có sẵn bằng cờ này.
Thẻ:host_machine_resource_optimizations
--local_ram_resources=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.>
mặc định: "HOST_RAM*.67"-
Đặt rõ tổng lượng RAM máy chủ lưu trữ cục bộ (tính bằng MB) mà Bazel có thể chi tiêu cho các thao tác xây dựng được thực thi cục bộ. Lấy một số nguyên hoặc "HOST_RAM", có thể theo sau là [-|*]<float> (ví dụ: HOST_RAM*.5 để sử dụng một nửa RAM có sẵn). Theo mặc định ("HOST_RAM*.67"), Bazel sẽ truy vấn cấu hình hệ thống để ước tính lượng RAM có sẵn và sẽ sử dụng 67% lượng RAM đó.
Thẻ:host_machine_resource_optimizations
--local_resources=<a named double, 'name=value', where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
nhiều mục đích sử dụng được tích luỹ-
Đặt số lượng tài nguyên mà Bazel có thể sử dụng. Nhận một chỉ định cho số thực hoặc HOST_RAM/HOST_CPUS, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.5 để sử dụng một nửa RAM có sẵn). Có thể dùng nhiều lần để chỉ định nhiều loại tài nguyên. Bazel sẽ giới hạn số lượng thao tác chạy đồng thời dựa trên tài nguyên có sẵn và tài nguyên cần thiết. Các kiểm thử có thể khai báo số lượng tài nguyên cần thiết bằng cách sử dụng thẻ có định dạng "resources:<resource name>:<amount>". Ghi đè các tài nguyên do --local_{cpu|ram|extra}_resources chỉ định.
Thẻ:host_machine_resource_optimizations
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của nhật ký:
--build_event_upload_max_retries=<an integer>
mặc định: "4"-
Số lần tối đa mà Bazel nên thử tải một sự kiện bản dựng lên.
Thẻ:bazel_internal_configuration
--[no]debug_spawn_scheduler
mặc định: "false"--[no]experimental_bep_target_summary
mặc định: "false"- Có xuất bản sự kiện TargetSummary hay không.
--[no]experimental_build_event_expand_filesets
mặc định: "false"-
Nếu đúng, hãy mở rộng Filesets trong BEP khi trình bày các tệp đầu ra.
Thẻ:affects_outputs
--[no]experimental_build_event_fully_resolve_fileset_symlinks
mặc định: "false"-
Nếu đúng, hãy phân giải hoàn toàn các đường liên kết tượng trưng Fileset tương đối trong BEP khi trình bày các tệp đầu ra. Yêu cầu --experimental_build_event_expand_filesets.
Thẻ:affects_outputs
--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định cách các tệp của nhóm đầu ra sẽ được biểu thị trong các sự kiện BEP TargetComplete/AspectComplete. Giá trị là việc chỉ định tên nhóm đầu ra cho một trong các giá trị "NAMED_SET_OF_FILES_ONLY", "INLINE_ONLY" hoặc "BOTH". Giá trị mặc định là "NAMED_SET_OF_FILES_ONLY". Nếu một nhóm đầu ra được lặp lại, giá trị cuối cùng xuất hiện sẽ được sử dụng. Giá trị mặc định đặt chế độ cho các cấu phần phần mềm về mức độ phù hợp thành BOTH: --experimental_build_event_output_group_mode=baseline.lcov=both
Các thẻ:affects_outputs
--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.>
mặc định: "1 giây"-
Độ trễ ban đầu, tối thiểu cho các lần thử lại theo cơ chế thời gian đợi luỹ thừa khi quá trình tải lên BEP không thành công. (số mũ: 1,6)
Thẻ:bazel_internal_configuration
--experimental_build_event_upload_strategy=<a string>
mặc định: xem nội dung mô tả-
Chọn cách tải các cấu phần phần mềm được tham chiếu trong giao thức sự kiện bản dựng lên.
Thẻ:affects_outputs
--[no]experimental_docker_verbose
mặc định: "false"-
Nếu được bật, Bazel sẽ in các thông báo chi tiết hơn về chiến lược hộp cát Docker.
Thẻ:execution
--[no]experimental_materialize_param_files_directly
mặc định: "false"-
Nếu hiện thực hoá các tệp tham số, hãy thực hiện bằng cách ghi trực tiếp vào ổ đĩa.
Thẻ:execution
--experimental_repository_resolved_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi giá trị Starlark bằng thông tin đã phân giải của tất cả các quy tắc kho lưu trữ Starlark đã được thực thi.
Thẻ:affects_outputs
--[no]experimental_run_bep_event_include_residue
mặc định: "false"-
Có nên đưa phần còn lại của dòng lệnh vào các sự kiện chạy bản dựng có thể chứa phần còn lại đó hay không. Theo mặc định, phần dư không được đưa vào các sự kiện tạo lệnh chạy có thể chứa phần dư.
Thẻ:affects_outputs
--experimental_skyfocus_dump_keys=<none, count or verbose>
mặc định: "none"-
Để gỡ lỗi Skyfocus. Kết xuất SkyKey được đặt tiêu điểm (gốc, lá, các phần phụ thuộc được đặt tiêu điểm, các phần phụ thuộc ngược được đặt tiêu điểm).
Thẻ:terminal_output
--[no]experimental_skyfocus_dump_post_gc_stats
mặc định: "false"-
Để gỡ lỗi Skyfocus. Nếu được bật, hãy kích hoạt GC theo cách thủ công trước/sau khi lấy tiêu điểm để báo cáo mức giảm kích thước vùng nhớ heap. Việc này sẽ làm tăng độ trễ của Skyfocus.
Thẻ:terminal_output
--experimental_skyfocus_handling_strategy=<strict or warn>
mặc định: "strict"-
Các chiến lược để Skyfocus xử lý những thay đổi bên ngoài nhóm làm việc.
Thẻ:eagerness_to_exit
--[no]experimental_stream_log_file_uploads
mặc định: "false"-
Truyền trực tuyến các tệp nhật ký được tải lên trực tiếp vào bộ nhớ từ xa thay vì ghi chúng vào ổ đĩa.
Thẻ:affects_outputs
--explain=<a path>
mặc định: xem nội dung mô tả-
Khiến hệ thống xây dựng giải thích từng bước đã thực hiện của bản dựng. Giải thích được ghi vào tệp nhật ký đã chỉ định.
Thẻ:affects_outputs
--[no]ignore_unsupported_sandboxing
mặc định: "false"-
Không in cảnh báo khi hệ thống này không hỗ trợ việc thực thi trong hộp cát.
Thẻ:terminal_output
--[no]legacy_important_outputs
mặc định: "false"-
Sử dụng tuỳ chọn này để ngăn chặn việc tạo trường important_outputs cũ trong sự kiện TargetComplete. Bazel cần có important_outputs để tích hợp ResultStore/BTX.
Thẻ:affects_outputs
--[no]materialize_param_files
mặc định: "false"-
Ghi các tệp tham số trung gian vào cây đầu ra ngay cả khi sử dụng tính năng thực thi thao tác từ xa. Hữu ích khi gỡ lỗi các thao tác. Điều này được ngầm hiểu qua --subcommands và --verbose_failures.
Thẻ:execution
--max_config_changes_to_show=<an integer>
mặc định: "3"-
Khi loại bỏ bộ nhớ đệm phân tích do có thay đổi về các lựa chọn bản dựng, hãy hiển thị tối đa số lượng tên lựa chọn đã thay đổi được chỉ định. Nếu số được đưa ra là -1, tất cả các lựa chọn đã thay đổi sẽ xuất hiện.
Thẻ:terminal_output
--max_test_output_bytes=<an integer>
mặc định: "-1"-
Chỉ định kích thước tối đa cho mỗi nhật ký kiểm thử có thể được phát ra khi --test_output là "errors" hoặc "all". Hữu ích để tránh làm quá tải đầu ra bằng đầu ra kiểm thử quá ồn. Tiêu đề kiểm thử được tính vào kích thước nhật ký. Giá trị âm có nghĩa là không có giới hạn. Đầu ra là tất cả hoặc không có gì.
Thẻ:test_runner
,terminal_output
,execution
--output_filter=<a valid Java regular expression>
mặc định: xem nội dung mô tả-
Chỉ hiện cảnh báo và kết quả hành động cho các quy tắc có tên khớp với biểu thức chính quy được cung cấp.
Thẻ:affects_outputs
--progress_report_interval=<an integer in 0-3600 range>
mặc định: "0"-
Số giây chờ giữa các báo cáo về những công việc vẫn đang chạy. Giá trị mặc định là 0, tức là báo cáo đầu tiên sẽ được in sau 10 giây, sau đó là 30 giây và sau đó tiến trình sẽ được báo cáo mỗi phút một lần. Khi bạn bật --curses, tiến trình sẽ được báo cáo mỗi giây.
Thẻ:affects_outputs
--remote_print_execution_messages=<failure, success or all>
mặc định: "failure"-
Chọn thời điểm in thông báo thực thi từ xa. Các giá trị hợp lệ là "failure" (lỗi) để chỉ in khi có lỗi, "success" (thành công) để chỉ in khi thành công và "all" (tất cả) để luôn in.
Thẻ:terminal_output
--[no]sandbox_debug
mặc định: "false"-
Bật các tính năng gỡ lỗi cho tính năng hộp cát. Điều này bao gồm 2 việc: thứ nhất, nội dung gốc của hộp cát vẫn nguyên vẹn sau khi bản dựng được tạo; và thứ hai, in thêm thông tin gỡ lỗi khi thực thi. Điều này có thể giúp các nhà phát triển quy tắc Bazel hoặc Starlark gỡ lỗi các lỗi do thiếu tệp đầu vào, v.v.
Thẻ:terminal_output
--show_result=<an integer>
mặc định: "1"-
Hiện kết quả của bản dựng. Đối với mỗi mục tiêu, hãy cho biết mục tiêu đó có được cập nhật hay không. Nếu có, hãy cung cấp danh sách các tệp đầu ra đã được tạo. Các tệp được in là những chuỗi thuận tiện để sao chép + dán vào trình bao nhằm thực thi các tệp đó.
Lựa chọn này yêu cầu một đối số số nguyên, là số ngưỡng mục tiêu mà thông tin kết quả không được in. Do đó, 0 sẽ khiến thông báo bị chặn và MAX_INT sẽ khiến kết quả luôn được in. Giá trị mặc định là một.
Nếu không có gì được tạo cho một mục tiêu, thì kết quả của mục tiêu đó có thể bị bỏ qua để giữ cho đầu ra dưới ngưỡng.
Thẻ:affects_outputs
--[no]subcommands
[-s
] mặc định: "false"-
Hiển thị các lệnh phụ được thực thi trong quá trình tạo. Các cờ liên quan: --execution_log_json_file, --execution_log_binary_file (để ghi nhật ký các lệnh con vào một tệp ở định dạng thân thiện với công cụ).
Thẻ:terminal_output
--test_output=<summary, errors, all or streamed>
mặc định: "summary"-
Chỉ định chế độ đầu ra mong muốn. Các giá trị hợp lệ là "summary" (chỉ xuất nội dung tóm tắt trạng thái kiểm thử), "errors" (cũng in nhật ký kiểm thử cho các kiểm thử không thành công), "all" (in nhật ký cho tất cả các kiểm thử) và "streamed" (xuất nhật ký cho tất cả các kiểm thử theo thời gian thực (thao tác này sẽ buộc các kiểm thử phải được thực thi cục bộ từng lần một, bất kể giá trị --test_strategy).
Thẻ:test_runner
,terminal_output
,execution
--test_summary=<short, terse, detailed, none or testcase>
mặc định: "short"-
Chỉ định định dạng mong muốn của bản tóm tắt kiểm thử. Các giá trị hợp lệ là "short" (ngắn) để chỉ in thông tin về các kiểm thử đã thực thi, "terse" (vắn tắt) để chỉ in thông tin về các kiểm thử không thành công đã chạy, "detailed" (chi tiết) để in thông tin chi tiết về các trường hợp kiểm thử không thành công, "testcase" (trường hợp kiểm thử) để in thông tin tóm tắt về độ phân giải trường hợp kiểm thử, không in thông tin chi tiết về các trường hợp kiểm thử không thành công và "none" (không có) để bỏ qua thông tin tóm tắt.
Thẻ:terminal_output
--[no]verbose_explanations
mặc định: "false"-
Tăng độ chi tiết của nội dung giải thích được đưa ra nếu bạn bật --explain. Không có hiệu lực nếu bạn không bật --explain.
Thẻ:affects_outputs
--[no]verbose_failures
mặc định: "false"-
Nếu một lệnh không thành công, hãy in toàn bộ dòng lệnh.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--aspects_parameters=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các giá trị của tham số khía cạnh dòng lệnh. Mỗi giá trị tham số được chỉ định thông qua <param_name>=<param_value>, ví dụ: "my_param=my_val" trong đó "my_param" là một tham số của một khía cạnh nào đó trong danh sách --aspects hoặc do một khía cạnh trong danh sách yêu cầu. Bạn có thể sử dụng lựa chọn này nhiều lần. Tuy nhiên, bạn không được phép chỉ định giá trị cho cùng một thông số nhiều lần.
Thẻ:loading_and_analysis
--target_pattern_file=<a string>
mặc định: ""-
Nếu được đặt, bản dựng sẽ đọc các mẫu từ tệp có tên ở đây, thay vì trên dòng lệnh. Bạn không được chỉ định tệp ở đây cũng như các mẫu dòng lệnh.
Thẻ:changes_inputs
- Các lựa chọn thực thi và lưu vào bộ nhớ đệm từ xa:
--experimental_circuit_breaker_strategy=<failure>
mặc định: xem nội dung mô tả-
Chỉ định chiến lược mà cầu dao sẽ sử dụng. Các chiến lược có thể sử dụng là "failure". Khi giá trị không hợp lệ cho lựa chọn, hành vi sẽ giống như khi lựa chọn không được đặt.
Thẻ:execution
--[no]experimental_guard_against_concurrent_changes
mặc định: "false"- Tắt tuỳ chọn này để vô hiệu hoá việc kiểm tra ctime của các tệp đầu vào của một thao tác trước khi tải tệp đó lên bộ nhớ đệm từ xa. Có thể xảy ra trường hợp nhân Linux trì hoãn việc ghi tệp, điều này có thể gây ra kết quả dương tính giả.
--experimental_remote_cache_compression_threshold=<an integer>
mặc định: "100"- Kích thước blob tối thiểu cần thiết để nén/giải nén bằng zstd. Không có hiệu quả trừ phi bạn đặt --remote_cache_compression.
--experimental_remote_cache_eviction_retries=<an integer>
mặc định: "5"-
Số lần thử lại tối đa nếu bản dựng gặp phải lỗi bộ nhớ đệm từ xa tạm thời, nếu không thì bản dựng sẽ không thành công. Ví dụ: áp dụng khi các cấu phần phần mềm bị loại khỏi bộ nhớ đệm từ xa hoặc trong một số điều kiện lỗi bộ nhớ đệm nhất định. Giá trị khác 0 sẽ ngầm đặt --incompatible_remote_use_new_exit_code_for_lost_inputs thành true. Mã lời gọi mới sẽ được tạo cho mỗi lần thử. Nếu tạo mã nhận dạng lệnh gọi và cung cấp mã đó cho Bazel bằng --invocation_id, bạn không nên sử dụng cờ này. Thay vào đó, hãy đặt cờ --incompatible_remote_use_new_exit_code_for_lost_inputs và kiểm tra mã thoát 39.
Thẻ:execution
--[no]experimental_remote_cache_lease_extension
mặc định: "false"- Nếu bạn đặt thành true, Bazel sẽ gia hạn thời gian thuê cho các đầu ra của thao tác từ xa trong quá trình tạo bằng cách định kỳ gửi lệnh gọi "FindMissingBlobs" đến bộ nhớ đệm từ xa. Tần suất dựa trên giá trị của `--experimental_remote_cache_ttl`.
--experimental_remote_cache_ttl=<An immutable length of time.>
mặc định: "3h"-
TTL tối thiểu được đảm bảo của các blob trong bộ nhớ đệm từ xa sau khi các bản tóm tắt của chúng được tham chiếu gần đây, ví dụ: bằng ActionResult hoặc FindMissingBlobs. Bazel thực hiện một số hoạt động tối ưu hoá dựa trên TTL của các blob, chẳng hạn như không gọi GetActionResult nhiều lần trong một bản dựng gia tăng. Giá trị này phải được đặt nhỏ hơn một chút so với TTL thực tế vì có một khoảng trống giữa thời điểm máy chủ trả về các bản tóm tắt và thời điểm Bazel nhận được các bản tóm tắt đó.
Thẻ:execution
--experimental_remote_capture_corrupted_outputs=<a path>
mặc định: xem nội dung mô tả- Đường dẫn đến một thư mục nơi các đầu ra bị hỏng sẽ được ghi lại.
--[no]experimental_remote_discard_merkle_trees
mặc định: "true"- Nếu được đặt thành true, hãy loại bỏ các bản sao trong bộ nhớ của cây Merkle của gốc đầu vào và các ánh xạ đầu vào được liên kết trong các lệnh gọi đến GetActionResult() và Execute(). Việc này giúp giảm đáng kể mức sử dụng bộ nhớ, nhưng yêu cầu Bazel tính toán lại các bản sao đó khi bộ nhớ đệm từ xa bị lỗi và khi thử lại.
--experimental_remote_downloader=<a string>
mặc định: xem nội dung mô tả- URI điểm cuối của Remote Asset API, được dùng làm proxy tải xuống từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Xem tại: https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto
--[no]experimental_remote_downloader_local_fallback
mặc định: "false"- Có quay lại trình tải xuống cục bộ hay không nếu trình tải xuống từ xa không thành công.
--[no]experimental_remote_downloader_propagate_credentials
mặc định: "false"- Có truyền thông tin đăng nhập từ netrc và trình trợ giúp thông tin đăng nhập đến máy chủ trình tải xuống từ xa hay không. Phương thức triển khai máy chủ cần hỗ trợ bộ đủ tiêu chuẩn `http_header_url:<url-index>:<header-key>` mới, trong đó `<url-index>` là vị trí dựa trên 0 của URL bên trong trường `uris` của FetchBlobRequest. Tiêu đề dành riêng cho URL sẽ được ưu tiên hơn tiêu đề chung.
--[no]experimental_remote_execution_keepalive
mặc định: "false"- Có nên sử dụng keepalive cho các lệnh gọi thực thi từ xa hay không.
--experimental_remote_failure_rate_threshold=<an integer in 0-100 range>
mặc định: "10"-
Đặt số lượng tỷ lệ lỗi được phép theo tỷ lệ phần trăm cho một khoảng thời gian cụ thể, sau đó, tỷ lệ này sẽ ngừng gọi vào bộ nhớ đệm/trình thực thi từ xa. Theo mặc định, giá trị này là 10. Đặt giá trị này thành 0 nghĩa là không có giới hạn.
Thẻ:execution
--experimental_remote_failure_window_interval=<An immutable length of time.>
mặc định: "60 giây"-
Khoảng thời gian mà hệ thống tính toán tỷ lệ yêu cầu từ xa không thành công. Nếu giá trị bằng 0 hoặc âm, thời gian thất bại sẽ được tính là toàn bộ thời gian thực thi.Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
Thẻ:execution
--[no]experimental_remote_mark_tool_inputs
mặc định: "false"- Nếu bạn đặt thành true, Bazel sẽ đánh dấu các đầu vào là đầu vào công cụ cho trình thực thi từ xa. Bạn có thể dùng tính năng này để triển khai các worker liên tục từ xa.
--[no]experimental_remote_merkle_tree_cache
mặc định: "false"- Nếu bạn đặt thành true, các phép tính cây Merkle sẽ được ghi nhớ để cải thiện tốc độ kiểm tra lượt truy cập bộ nhớ đệm từ xa. Mức sử dụng bộ nhớ của bộ nhớ đệm được kiểm soát bằng --experimental_remote_merkle_tree_cache_size.
--experimental_remote_merkle_tree_cache_size=<a long integer>
mặc định: "1000"- Số lượng cây Merkle cần ghi nhớ để cải thiện tốc độ kiểm tra lượt truy cập bộ nhớ đệm từ xa. Mặc dù bộ nhớ đệm được cắt bớt tự động theo cách xử lý các tham chiếu mềm của Java, nhưng lỗi hết bộ nhớ có thể xảy ra nếu bạn đặt giá trị quá cao. Nếu bạn đặt thành 0, kích thước bộ nhớ đệm sẽ không bị giới hạn. Giá trị tối ưu sẽ khác nhau tuỳ thuộc vào quy mô của dự án. Giá trị mặc định là 1000.
--experimental_remote_output_service=<a string>
mặc định: xem nội dung mô tả- HOST hoặc HOST:PORT của một điểm cuối dịch vụ đầu ra từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định giản đồ grpc:// hoặc unix: để tắt TLS.
--experimental_remote_output_service_output_path_prefix=<a string>
mặc định: ""- Đường dẫn mà nội dung của các thư mục đầu ra do --experimental_remote_output_service quản lý được đặt. Thư mục đầu ra thực tế mà bản dựng sử dụng sẽ là một thư mục con của đường dẫn này và do dịch vụ đầu ra xác định.
--[no]experimental_remote_require_cached
mặc định: "false"- Nếu được đặt thành true, hãy thực thi tất cả các thao tác có thể chạy từ xa được lưu vào bộ nhớ đệm, nếu không, bản dựng sẽ không thành công. Điều này hữu ích trong việc khắc phục các vấn đề về tính không xác định vì nó cho phép kiểm tra xem những hành động cần được lưu vào bộ nhớ đệm có thực sự được lưu vào bộ nhớ đệm hay không mà không cần phải chèn các kết quả mới một cách giả tạo vào bộ nhớ đệm.
--experimental_remote_scrubbing_config=<Converts to a Scrubber>
mặc định: xem nội dung mô tả- Cho phép dọn dẹp khoá bộ nhớ đệm từ xa bằng tệp cấu hình được cung cấp. Tệp này phải là một vùng đệm giao thức ở định dạng văn bản (xem src/main/protobuf/remote_scrubbing.proto). Tính năng này nhằm mục đích tạo điều kiện chia sẻ bộ nhớ đệm từ xa/trên đĩa giữa các thao tác thực thi trên nhiều nền tảng nhưng nhắm đến cùng một nền tảng. Bạn nên sử dụng tính năng này một cách thận trọng vì chế độ cài đặt không phù hợp có thể khiến các mục trong bộ nhớ đệm bị chia sẻ nhầm và dẫn đến các bản dựng không chính xác. Việc dọn dẹp không ảnh hưởng đến cách thực thi một thao tác, mà chỉ ảnh hưởng đến cách tính khoá bộ nhớ đệm từ xa/trên đĩa cho mục đích truy xuất hoặc lưu trữ kết quả của thao tác. Các thao tác đã được dọn dẹp không tương thích với việc thực thi từ xa và sẽ luôn được thực thi cục bộ. Việc sửa đổi cấu hình dọn dẹp không làm mất hiệu lực các đầu ra có trong hệ thống tệp cục bộ hoặc bộ nhớ đệm nội bộ; bạn cần có một bản dựng sạch để thực thi lại các thao tác bị ảnh hưởng. Để sử dụng thành công tính năng này, bạn nên đặt một --host_platform tuỳ chỉnh cùng với --experimental_platform_in_output_dir (để chuẩn hoá tiền tố đầu ra) và --incompatible_strict_action_env (để chuẩn hoá các biến môi trường).
--[no]incompatible_remote_use_new_exit_code_for_lost_inputs
mặc định: "true"-
Nếu được đặt thành true, Bazel sẽ dùng mã thoát mới 39 thay vì 34 nếu lỗi bộ nhớ đệm từ xa (bao gồm cả việc loại bỏ bộ nhớ đệm) khiến quá trình tạo không thành công.
Thẻ:incompatible_change
--[no]remote_accept_cached
mặc định: "true"- Có chấp nhận kết quả của thao tác được lưu vào bộ nhớ đệm từ xa hay không.
--remote_build_event_upload=<all or minimal>
mặc định: "minimal"- Nếu được đặt thành "all", tất cả đầu ra cục bộ mà BEP tham chiếu sẽ được tải lên bộ nhớ đệm từ xa. Nếu bạn đặt thành "tối thiểu", thì các đầu ra cục bộ mà BEP tham chiếu sẽ không được tải lên bộ nhớ đệm từ xa, ngoại trừ những tệp quan trọng đối với người dùng BEP (ví dụ: nhật ký kiểm thử và hồ sơ thời gian). Lược đồ bytestream:// luôn được dùng cho URI của các tệp ngay cả khi chúng bị thiếu trong bộ nhớ đệm từ xa. Mặc định là "minimal".
--remote_bytestream_uri_prefix=<a string>
mặc định: xem nội dung mô tả- Tên máy chủ và tên phiên bản sẽ được dùng trong URI bytestream:// được ghi vào luồng sự kiện bản dựng. Bạn có thể đặt lựa chọn này khi thực hiện các bản dựng bằng một proxy, khiến các giá trị của --remote_executor và --remote_instance_name không còn tương ứng với tên chuẩn của dịch vụ thực thi từ xa. Khi không được đặt, giá trị này sẽ mặc định là "${hostname}/${instance_name}".
--remote_cache=<a string>
mặc định: xem nội dung mô tả- URI của một điểm cuối lưu vào bộ nhớ đệm. Các giản đồ được hỗ trợ là http, https, grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định lược đồ grpc://, http:// hoặc unix: để tắt TLS. Xem https://bazel.build/remote/caching
--[no]remote_cache_async
mặc định: "true"- Nếu đặt là true, quá trình tải kết quả của thao tác lên đĩa hoặc bộ nhớ đệm từ xa sẽ diễn ra ở chế độ nền thay vì chặn quá trình hoàn tất một thao tác. Một số thao tác không tương thích với tính năng tải lên trong nền và vẫn có thể chặn ngay cả khi bạn đặt cờ này.
--[no]remote_cache_compression
mặc định: "false"- Nếu được bật, hãy nén/giải nén các blob trong bộ nhớ đệm bằng zstd khi kích thước của chúng ít nhất là --experimental_remote_cache_compression_threshold.
--remote_cache_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định tiêu đề sẽ được đưa vào các yêu cầu bộ nhớ đệm: --remote_cache_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_default_exec_properties=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Đặt các thuộc tính exec mặc định sẽ được dùng làm nền tảng thực thi từ xa nếu nền tảng thực thi chưa đặt exec_properties.
Thẻ:affects_outputs
--remote_default_platform_properties=<a string>
mặc định: ""- Đặt các thuộc tính nền tảng mặc định sẽ được đặt cho API thực thi từ xa, nếu nền tảng thực thi chưa đặt remote_execution_properties. Giá trị này cũng sẽ được dùng nếu nền tảng lưu trữ được chọn làm nền tảng thực thi cho hoạt động thực thi từ xa.
--remote_download_regex=<a valid Java regular expression>
nhiều mục đích sử dụng được tích luỹ-
Buộc tải các đầu ra của bản dựng từ xa có đường dẫn khớp với mẫu này xuống, bất kể --remote_download_outputs. Bạn có thể chỉ định nhiều mẫu bằng cách lặp lại cờ này.
Thẻ:affects_outputs
--remote_downloader_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định một tiêu đề sẽ được đưa vào các yêu cầu của trình tải xuống từ xa: --remote_downloader_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_exec_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định tiêu đề sẽ được đưa vào các yêu cầu thực thi: --remote_exec_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_execution_priority=<an integer>
mặc định: "0"- Mức độ ưu tiên tương đối của các thao tác sẽ được thực thi từ xa. Ngữ nghĩa của các giá trị ưu tiên cụ thể phụ thuộc vào máy chủ.
--remote_executor=<a string>
mặc định: xem nội dung mô tả- HOST hoặc HOST:PORT của một điểm cuối thực thi từ xa. Các giản đồ được hỗ trợ là grpc, grpcs (grpc có bật TLS) và unix (ổ cắm UNIX cục bộ). Nếu không có giản đồ nào được cung cấp, Bazel sẽ mặc định là grpcs. Chỉ định giản đồ grpc:// hoặc unix: để tắt TLS.
--remote_grpc_log=<a path>
mặc định: xem nội dung mô tả- Nếu được chỉ định, đây là đường dẫn đến một tệp để ghi lại các thông tin chi tiết liên quan đến lệnh gọi gRPC. Nhật ký này bao gồm một chuỗi các protobuf com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry được chuyển đổi tuần tự, trong đó mỗi thông báo được bắt đầu bằng một varint biểu thị kích thước của thông báo protobuf được chuyển đổi tuần tự sau đây, như được thực hiện bằng phương thức LogEntry.writeDelimitedTo(OutputStream).
--remote_header=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ- Chỉ định một tiêu đề sẽ được đưa vào các yêu cầu: --remote_header=Name=Value. Bạn có thể truyền nhiều tiêu đề bằng cách chỉ định cờ nhiều lần. Nhiều giá trị cho cùng một tên sẽ được chuyển đổi thành một danh sách được phân tách bằng dấu phẩy.
--remote_instance_name=<a string>
mặc định: ""- Giá trị cần truyền dưới dạng instance_name trong API thực thi từ xa.
--[no]remote_local_fallback
mặc định: "false"- Có quay lại chiến lược thực thi cục bộ độc lập hay không nếu quá trình thực thi từ xa không thành công.
--remote_local_fallback_strategy=<a string>
mặc định: "local"- Không dùng nữa. Hãy xem https://github.com/bazelbuild/bazel/issues/7480 để biết thông tin chi tiết.
--remote_max_connections=<an integer>
mặc định: "100"-
Giới hạn số lượng tối đa các kết nối đồng thời đến bộ nhớ đệm/trình thực thi từ xa. Theo mặc định, giá trị này là 100. Đặt giá trị này thành 0 nghĩa là không có giới hạn.
Đối với bộ nhớ đệm từ xa HTTP, một kết nối TCP có thể xử lý một yêu cầu tại một thời điểm, vì vậy Bazel có thể thực hiện tối đa --remote_max_connections yêu cầu đồng thời.
Đối với bộ nhớ đệm/trình thực thi từ xa gRPC, một kênh gRPC thường có thể xử lý hơn 100 yêu cầu đồng thời, vì vậy Bazel có thể thực hiện khoảng `--remote_max_connections * 100` yêu cầu đồng thời.
Thẻ:host_machine_resource_optimizations
--remote_proxy=<a string>
mặc định: xem nội dung mô tả- Kết nối với bộ nhớ đệm từ xa thông qua một proxy. Hiện tại, bạn chỉ có thể dùng cờ này để định cấu hình một socket miền Unix (unix:/path/to/socket).
--remote_result_cache_priority=<an integer>
mặc định: "0"- Mức độ ưu tiên tương đối của các thao tác từ xa sẽ được lưu trữ trong bộ nhớ đệm từ xa. Ngữ nghĩa của các giá trị ưu tiên cụ thể phụ thuộc vào máy chủ.
--remote_retries=<an integer>
mặc định: "5"- Số lần thử lại tối đa đối với một lỗi tạm thời. Nếu bạn đặt thành 0, thì các lần thử lại sẽ bị vô hiệu hoá.
--remote_retry_max_delay=<An immutable length of time.>
mặc định: "5 giây"- Độ trễ tối đa khi thử lại từ xa. Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
--remote_timeout=<An immutable length of time.>
mặc định: "60 giây"- Khoảng thời gian tối đa để chờ thực thi từ xa và gọi bộ nhớ đệm. Đối với bộ nhớ đệm REST, đây là cả thời gian chờ kết nối và thời gian chờ đọc. Bạn có thể sử dụng các đơn vị sau: Ngày (d), giờ (h), phút (m), giây (s) và mili giây (ms). Nếu bạn bỏ qua đơn vị, giá trị sẽ được hiểu là giây.
--[no]remote_upload_local_results
mặc định: "true"- Có tải kết quả của thao tác được thực thi cục bộ lên bộ nhớ đệm từ xa hay không nếu bộ nhớ đệm từ xa hỗ trợ thao tác đó và người dùng được phép làm như vậy.
--[no]remote_verify_downloads
mặc định: "true"- Nếu được đặt thành true, Bazel sẽ tính tổng băm của tất cả các lượt tải xuống từ xa và loại bỏ các giá trị được lưu vào bộ nhớ đệm từ xa nếu chúng không khớp với giá trị dự kiến.
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]allow_analysis_cache_discard
mặc định: "true"-
Nếu loại bỏ bộ nhớ đệm phân tích do có thay đổi trong hệ thống bản dựng, việc đặt lựa chọn này thành false sẽ khiến bazel thoát thay vì tiếp tục với bản dựng. Tuỳ chọn này không có hiệu lực khi bạn cũng đặt "discard_analysis_cache".
Thẻ:eagerness_to_exit
--auto_output_filter=<none, all, packages or subpackages>
mặc định: "none"- Nếu bạn không chỉ định --output_filter, thì giá trị cho lựa chọn này sẽ được dùng để tự động tạo bộ lọc. Các giá trị được phép là "none" (không lọc gì / hiển thị mọi thứ), "all" (lọc mọi thứ / không hiển thị gì), "packages" (bao gồm đầu ra từ các quy tắc trong các gói được đề cập trên dòng lệnh Blaze) và "subpackages" (giống như "packages", nhưng cũng bao gồm các gói con). Đối với các giá trị "packages" và "subpackages" //java/foo và //javatests/foo được coi là một gói)'.
--[no]build_manual_tests
mặc định: "false"- Buộc các mục tiêu kiểm thử được gắn thẻ "thủ công" phải được tạo. các bài kiểm thử "thủ công" sẽ không được xử lý. Lựa chọn này buộc chúng phải được tạo (nhưng không được thực thi).
--build_tag_filters=<comma-separated list of options>
mặc định: ""- Chỉ định danh sách thẻ được phân tách bằng dấu phẩy. Bạn có thể thêm tiền tố "-" (không bắt buộc) vào mỗi thẻ để chỉ định thẻ bị loại trừ. Chỉ những mục tiêu chứa ít nhất một thẻ được đưa vào và không chứa bất kỳ thẻ nào bị loại trừ mới được tạo. Lựa chọn này không ảnh hưởng đến bộ kiểm thử được thực thi bằng lệnh "test"; những kiểm thử đó sẽ được điều chỉnh bằng các lựa chọn lọc kiểm thử, chẳng hạn như "--test_tag_filters"
--[no]build_tests_only
mặc định: "false"- Nếu được chỉ định, chỉ các quy tắc *_test và test_suite sẽ được tạo và các mục tiêu khác được chỉ định trên dòng lệnh sẽ bị bỏ qua. Theo mặc định, mọi thứ được yêu cầu sẽ được tạo.
--combined_report=<none or lcov>
mặc định: "none"- Chỉ định loại báo cáo phạm vi tích luỹ mong muốn. Hiện tại, chỉ LCOV được hỗ trợ.
--[no]compile_one_dependency
mặc định: "false"- Biên dịch một phần phụ thuộc duy nhất của các tệp đối số. Điều này hữu ích cho việc kiểm tra cú pháp của các tệp nguồn trong IDE, chẳng hạn như bằng cách tạo lại một mục tiêu duy nhất phụ thuộc vào tệp nguồn để phát hiện lỗi sớm nhất có thể trong chu kỳ chỉnh sửa/tạo/kiểm thử. Đối số này ảnh hưởng đến cách diễn giải tất cả các đối số không phải cờ; thay vì là mục tiêu để tạo, chúng là tên tệp nguồn. Đối với mỗi tên tệp nguồn, một mục tiêu tuỳ ý phụ thuộc vào tên tệp đó sẽ được tạo.
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]discard_analysis_cache
mặc định: "false"- Huỷ bộ nhớ đệm phân tích ngay sau khi giai đoạn phân tích hoàn tất. Giảm mức sử dụng bộ nhớ khoảng 10%, nhưng làm cho các bản dựng gia tăng tiếp theo chậm hơn.
--disk_cache=<a path>
mặc định: xem nội dung mô tả- Đường dẫn đến một thư mục mà Bazel có thể đọc và ghi các thao tác cũng như đầu ra của thao tác. Nếu thư mục chưa tồn tại, thư mục sẽ được tạo.
--embed_label=<a one-line string>
mặc định: ""- Nhúng bản sửa đổi kiểm soát nguồn hoặc nhãn phát hành vào tệp nhị phân
--execution_log_binary_file=<a path>
mặc định: xem nội dung mô tả- Ghi lại các lệnh gọi đã thực thi vào tệp này dưới dạng các proto SpawnExec được phân tách theo độ dài, theo src/main/protobuf/spawn.proto. Ưu tiên --execution_log_compact_file, nhỏ hơn đáng kể và rẻ hơn khi tạo. Các cờ liên quan: --execution_log_compact_file (định dạng thu gọn; loại trừ lẫn nhau), --execution_log_json_file (định dạng JSON văn bản; loại trừ lẫn nhau), --execution_log_sort (có sắp xếp nhật ký thực thi hay không), --subcommands (để hiển thị các lệnh con trong đầu ra của thiết bị đầu cuối).
--execution_log_compact_file=<a path>
mặc định: xem nội dung mô tả- Ghi lại các lệnh gọi đã thực thi vào tệp này dưới dạng các proto ExecLogEntry được phân tách theo độ dài, theo src/main/protobuf/spawn.proto. Toàn bộ tệp được nén bằng thuật toán zstd. Các cờ liên quan: --execution_log_binary_file (định dạng protobuf nhị phân; loại trừ lẫn nhau), --execution_log_json_file (định dạng JSON văn bản; loại trừ lẫn nhau), --subcommands (để hiển thị các lệnh con trong đầu ra của thiết bị đầu cuối).
--execution_log_json_file=<a path>
mặc định: xem nội dung mô tả- Ghi lại các lệnh gọi đã thực thi vào tệp này dưới dạng các biểu thị JSON được phân tách bằng dòng mới của các giao thức SpawnExec, theo src/main/protobuf/spawn.proto. Ưu tiên --execution_log_compact_file, nhỏ hơn đáng kể và rẻ hơn khi tạo. Các cờ liên quan: --execution_log_compact_file (định dạng nhỏ gọn; loại trừ lẫn nhau), --execution_log_binary_file (định dạng protobuf nhị phân; loại trừ lẫn nhau), --execution_log_sort (có sắp xếp nhật ký thực thi hay không), --subcommands (để hiển thị các lệnh con trong đầu ra của thiết bị đầu cuối).
--[no]execution_log_sort
mặc định: "true"- Có sắp xếp nhật ký thực thi hay không, giúp bạn dễ dàng so sánh nhật ký trên các lệnh gọi. Đặt thành false để tránh việc sử dụng CPU và bộ nhớ có thể đáng kể vào cuối lệnh gọi, với chi phí là tạo nhật ký theo thứ tự thực thi không xác định. Chỉ áp dụng cho định dạng nhị phân và JSON; định dạng nhỏ gọn không bao giờ được sắp xếp.
--[no]expand_test_suites
mặc định: "true"-
Mở rộng các mục tiêu test_suite thành các kiểm thử thành phần trước khi phân tích. Khi cờ này được bật (mặc định), các mẫu mục tiêu âm tính sẽ áp dụng cho các kiểm thử thuộc bộ kiểm thử, nếu không thì các mẫu này sẽ không áp dụng. Việc tắt cờ này sẽ hữu ích khi các khía cạnh cấp cao nhất được áp dụng ở dòng lệnh: sau đó, chúng có thể phân tích các mục tiêu test_suite.
Thẻ:loading_and_analysis
--experimental_disk_cache_gc_idle_delay=<An immutable length of time.>
mặc định: "5m"- Khoảng thời gian mà máy chủ phải ở trạng thái không hoạt động trước khi quá trình thu gom rác của bộ nhớ đệm trên đĩa diễn ra. Để chỉ định chính sách thu gom rác, hãy đặt --experimental_disk_cache_gc_max_size và/hoặc --experimental_disk_cache_gc_max_age.
--experimental_disk_cache_gc_max_age=<An immutable length of time.>
mặc định: "0"- Nếu được đặt thành một giá trị dương, bộ nhớ đệm trên đĩa sẽ được thu gom rác định kỳ để xoá các mục nhập cũ hơn độ tuổi này. Nếu được đặt cùng với --experimental_disk_cache_gc_max_size, cả hai tiêu chí sẽ được áp dụng. Quá trình thu gom rác diễn ra ở chế độ nền khi máy chủ ở trạng thái rảnh, theo xác định của cờ --experimental_disk_cache_gc_idle_delay.
--experimental_disk_cache_gc_max_size=<a size in bytes, optionally followed by a K, M, G or T multiplier>
mặc định: "0"- Nếu được đặt thành một giá trị dương, bộ nhớ đệm trên ổ đĩa sẽ được thu gom rác định kỳ để duy trì dưới kích thước này. Nếu được đặt cùng với --experimental_disk_cache_gc_max_age, cả hai tiêu chí sẽ được áp dụng. Quá trình thu gom rác diễn ra ở chế độ nền khi máy chủ ở trạng thái rảnh, theo xác định của cờ --experimental_disk_cache_gc_idle_delay.
--experimental_extra_action_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: ""- Ngừng sử dụng và thay bằng các khía cạnh. Lọc tập hợp các mục tiêu để lên lịch cho extra_actions.
--[no]experimental_extra_action_top_level_only
mặc định: "false"- Ngừng sử dụng và thay bằng các khía cạnh. Chỉ lên lịch extra_actions cho các mục tiêu cấp cao nhất.
--experimental_spawn_scheduler
-
Cho phép thực thi động bằng cách chạy song song các thao tác cục bộ và từ xa. Bazel tạo từng thao tác cục bộ và từ xa, đồng thời chọn thao tác hoàn thành trước. Nếu một thao tác hỗ trợ các worker, thì thao tác cục bộ sẽ chạy ở chế độ worker liên tục. Để bật tính năng thực thi động cho một mã nhớ hành động riêng lẻ, hãy sử dụng cờ `--internal_spawn_scheduler` và `--strategy=<mnemonic>=dynamic`.
Mở rộng thành:
--internal_spawn_scheduler
--spawn_strategy=dynamic
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--local_termination_grace_seconds=<an integer>
mặc định: "15"- Thời gian chờ giữa việc chấm dứt một quy trình cục bộ do hết thời gian chờ và buộc tắt quy trình đó.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
--test_lang_filters=<comma-separated list of options>
mặc định: ""- Chỉ định danh sách các ngôn ngữ thử nghiệm được phân tách bằng dấu phẩy. Bạn có thể tuỳ ý thêm tiền tố "-" vào mỗi ngôn ngữ để chỉ định các ngôn ngữ bị loại trừ. Bạn sẽ chỉ tìm thấy những mục tiêu kiểm thử được viết bằng các ngôn ngữ đã chỉ định. Tên được dùng cho mỗi ngôn ngữ phải giống với tiền tố ngôn ngữ trong quy tắc *_test, ví dụ: một trong các tiền tố "cc", "java", "py", v.v. Lựa chọn này ảnh hưởng đến hành vi --build_tests_only và lệnh kiểm thử.
--test_size_filters=<comma-separated list of values: small, medium, large, or enormous>
mặc định: ""- Chỉ định danh sách kích thước kiểm thử được phân tách bằng dấu phẩy. Bạn có thể tuỳ ý thêm tiền tố "-" vào mỗi kích thước để chỉ định kích thước bị loại trừ. Bạn sẽ chỉ tìm thấy những mục tiêu kiểm thử có chứa ít nhất một kích thước được đưa vào và không chứa bất kỳ kích thước nào bị loại trừ. Tuỳ chọn này ảnh hưởng đến hành vi --build_tests_only và lệnh kiểm thử.
--test_tag_filters=<comma-separated list of options>
mặc định: ""- Chỉ định danh sách thẻ kiểm thử được phân tách bằng dấu phẩy. Bạn có thể thêm tiền tố "-" (không bắt buộc) vào mỗi thẻ để chỉ định thẻ bị loại trừ. Chỉ những mục tiêu kiểm thử chứa ít nhất một thẻ được đưa vào và không chứa bất kỳ thẻ nào bị loại trừ mới được tìm thấy. Tuỳ chọn này ảnh hưởng đến hành vi --build_tests_only và lệnh kiểm thử.
--test_timeout_filters=<comma-separated list of values: short, moderate, long, or eternal>
mặc định: ""- Chỉ định danh sách thời gian chờ kiểm thử được phân tách bằng dấu phẩy. Bạn có thể tuỳ ý thêm "-" vào trước mỗi thời gian chờ để chỉ định thời gian chờ bị loại trừ. Hệ thống sẽ chỉ tìm thấy những mục tiêu kiểm thử có chứa ít nhất một thời gian chờ được đưa vào và không chứa bất kỳ thời gian chờ nào bị loại trừ. Tuỳ chọn này ảnh hưởng đến hành vi --build_tests_only và lệnh kiểm thử.
--workspace_status_command=<path>
mặc định: ""- Một lệnh được gọi khi bắt đầu quá trình tạo để cung cấp thông tin trạng thái về không gian làm việc dưới dạng các cặp khoá/giá trị. Hãy xem Hướng dẫn sử dụng để biết toàn bộ quy cách. Bạn cũng có thể xem tools/buildstamp/get_workspace_status để biết ví dụ.
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]experimental_inprocess_symlink_creation
mặc định: "true"- Có thực hiện các lệnh gọi trực tiếp đến hệ thống tệp để tạo cây liên kết tượng trưng hay không thay vì uỷ quyền cho một quy trình trợ giúp.
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_persistent_aar_extractor
mặc định: "false"-
Bật trình trích xuất aar liên tục bằng cách sử dụng các worker.
Thẻ:execution
,experimental
--[no]experimental_remotable_source_manifests
mặc định: "false"-
Có nên thực hiện các thao tác trên tệp kê khai nguồn từ xa hay không
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_split_coverage_postprocessing
mặc định: "false"-
Nếu đúng, Bazel sẽ chạy quy trình xử lý hậu kỳ về mức độ phù hợp cho kiểm thử trong một quy trình tạo mới.
Thẻ:execution
,experimental
--[no]experimental_strict_fileset_output
mặc định: "false"-
Nếu bạn bật lựa chọn này, thì các nhóm tệp sẽ coi tất cả các cấu phần phần mềm đầu ra là tệp thông thường. Chúng sẽ không đi qua các thư mục hoặc nhạy cảm với các đường liên kết tượng trưng.
Thẻ:execution
,experimental
--[no]incompatible_modify_execution_info_additive
mặc định: "false"-
Khi được bật, việc truyền nhiều cờ --modify_execution_info sẽ có tính cộng dồn. Khi bị vô hiệu hoá, hệ thống chỉ xem xét cờ cuối cùng.
Thẻ:execution
,affects_outputs
,loading_and_analysis
,incompatible_change
--modify_execution_info=<regex=[+-]key,regex=[+-]key,...>
nhiều mục đích sử dụng được tích luỹ-
Thêm hoặc xoá các khoá khỏi thông tin thực thi của một thao tác dựa trên từ viết tắt của thao tác. Chỉ áp dụng cho những thao tác hỗ trợ thông tin thực thi. Nhiều thao tác phổ biến hỗ trợ thông tin thực thi, ví dụ: Genrule, CppCompile, Javac, StarlarkAction, TestRunner. Khi chỉ định nhiều giá trị, thứ tự sẽ quan trọng vì nhiều biểu thức chính quy có thể áp dụng cho cùng một mã nhớ.
Cú pháp: "regex=[+-]key,regex=[+-]key,...".
Ví dụ: ".*=+x,.*=-y,.*=+z" sẽ thêm "x" và "z" vào, đồng thời xoá "y" khỏi thông tin thực thi cho tất cả các thao tác.
"Genrule=+requires-x" sẽ thêm "requires-x" vào thông tin thực thi cho tất cả các thao tác Genrule.
"(?!Genrule).*=-requires-x" sẽ xoá "requires-x" khỏi thông tin thực thi cho tất cả các thao tác không phải Genrule.
Thẻ:execution
,affects_outputs
,loading_and_analysis
--persistent_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_android_dex_desugar
--strategy=Desugar=worker
--strategy=DexBuilder=worker
Thẻ:host_machine_resource_optimizations
,execution
--persistent_android_resource_processor
-
Bật trình xử lý tài nguyên Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_busybox_tools
--strategy=AaptPackage=worker
--strategy=AndroidResourceParser=worker
--strategy=AndroidResourceValidator=worker
--strategy=AndroidResourceCompiler=worker
--strategy=RClassGenerator=worker
--strategy=AndroidResourceLink=worker
--strategy=AndroidAapt2=worker
--strategy=AndroidAssetMerger=worker
--strategy=AndroidResourceMerger=worker
--strategy=AndroidCompiledResourceMerger=worker
--strategy=ManifestMerger=worker
--strategy=AndroidManifestMerger=worker
--strategy=Aapt2Optimize=worker
--strategy=AARGenerator=worker
--strategy=ProcessDatabinding=worker
--strategy=GenerateDataBindingBaseClasses=worker
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_dex_desugar
--internal_persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_resource_processor
-
Bật trình xử lý tài nguyên Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_resource_processor
--modify_execution_info=AaptPackage=+supports-multiplex-workers
--modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
--modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
--modify_execution_info=RClassGenerator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
--modify_execution_info=AndroidAapt2=+supports-multiplex-workers
--modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
--modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
--modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
--modify_execution_info=ManifestMerger=+supports-multiplex-workers
--modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
--modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
--modify_execution_info=AARGenerator=+supports-multiplex-workers
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_tools
-
Bật các công cụ Android liên tục và được ghép kênh (dexing, desugaring, xử lý tài nguyên).
Mở rộng thành:
--internal_persistent_multiplex_busybox_tools
--persistent_multiplex_android_resource_processor
--persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--[no]use_target_platform_for_tests
mặc định: "false"-
Nếu đúng, Bazel sẽ sử dụng nền tảng mục tiêu để chạy các kiểm thử thay vì nhóm thực thi kiểm thử.
Thẻ:execution
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--android_compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch mục tiêu Android.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_manifest_merger=<legacy, android or force_android>
mặc định: "android"-
Chọn công cụ sáp nhập tệp kê khai để dùng cho các quy tắc android_binary. Cờ giúp chuyển đổi sang công cụ sáp nhập tệp kê khai Android từ công cụ sáp nhập cũ.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_platforms=<a build target label>
mặc định: ""-
Đặt các nền tảng mà mục tiêu android_binary sử dụng. Nếu bạn chỉ định nhiều nền tảng, thì tệp nhị phân sẽ là một APK lớn, chứa các tệp nhị phân gốc cho từng nền tảng mục tiêu được chỉ định.
Thẻ:changes_inputs
,loading_and_analysis
,loses_incremental_state
--apple_crosstool_top=<a build target label>
default: "@bazel_tools//tools/cpp:toolchain"-
Nhãn của gói crosstool sẽ được dùng trong các quy tắc Apple và Objc cũng như các phần phụ thuộc của chúng.
Thẻ:loses_incremental_state
,changes_inputs
--cc_output_directory_tag=<a string>
mặc định: ""-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:affects_outputs
--compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch C++ cần dùng để biên dịch mục tiêu.
Thẻ:loading_and_analysis
,execution
--coverage_output_generator=<a build target label>
default: "@bazel_tools//tools/test:lcov_merger"-
Vị trí của tệp nhị phân dùng để xử lý hậu kỳ các báo cáo phạm vi thô. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Giá trị mặc định là "//tools/test:lcov_merger".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_report_generator=<a build target label>
default: "@bazel_tools//tools/test:coverage_report_generator"-
Vị trí của tệp nhị phân dùng để tạo báo cáo về mức độ phù hợp. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Mặc định là "//tools/test:coverage_report_generator".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_support=<a build target label>
default: "@bazel_tools//tools/test:coverage_support"-
Vị trí của các tệp hỗ trợ bắt buộc trên đầu vào của mọi thao tác kiểm thử thu thập mức độ phù hợp của mã. Giá trị mặc định là "//tools/test:coverage_support".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--custom_malloc=<a build target label>
mặc định: xem nội dung mô tả-
Chỉ định một cách triển khai malloc tuỳ chỉnh. Chế độ cài đặt này sẽ ghi đè các thuộc tính malloc trong quy tắc bản dựng.
Thẻ:changes_inputs
,affects_outputs
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các biểu thức chính quy được phân tách bằng dấu phẩy, mỗi biểu thức có thể có tiền tố là dấu "-" (biểu thức phủ định), được chỉ định (=) cho danh sách các mục tiêu giá trị ràng buộc được phân tách bằng dấu phẩy. Nếu một mục tiêu không khớp với biểu thức phủ định nào và khớp với ít nhất một biểu thức khẳng định, thì quá trình phân giải chuỗi công cụ của mục tiêu đó sẽ được thực hiện như thể mục tiêu đó đã khai báo các giá trị ràng buộc dưới dạng các ràng buộc thực thi. Ví dụ: //demo,-test=@platforms//cpus:x86_64 sẽ thêm "x86_64" vào mọi mục tiêu trong //demo, ngoại trừ những mục tiêu có tên chứa "test".
Thẻ:loading_and_analysis
--[no]experimental_include_xcode_execution_requirements
mặc định: "false"-
Nếu được đặt, hãy thêm yêu cầu thực thi "requires-xcode:{version}" vào mọi thao tác Xcode. Nếu phiên bản Xcode có nhãn được phân tách bằng dấu gạch ngang, hãy thêm yêu cầu thực thi "requires-xcode-label:{version_label}".
Thẻ:loses_incremental_state
,loading_and_analysis
,execution
,experimental
--[no]experimental_prefer_mutual_xcode
mặc định: "true"-
Nếu đúng, hãy sử dụng Xcode gần đây nhất có sẵn trên cả thiết bị cục bộ và từ xa. Nếu là false hoặc nếu không có phiên bản nào tương thích, hãy sử dụng phiên bản Xcode cục bộ được chọn thông qua xcode-select.
Thẻ:loses_incremental_state
,experimental
--extra_execution_platforms=<comma-separated list of options>
mặc định: ""-
Các nền tảng có sẵn dưới dạng nền tảng thực thi để chạy các thao tác. Bạn có thể chỉ định nền tảng theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các nền tảng này sẽ được cân nhắc trước những nền tảng được khai báo trong tệp WORKSPACE bằng register_execution_platforms(). Bạn chỉ có thể đặt lựa chọn này một lần; các phiên bản sau sẽ ghi đè các chế độ cài đặt cờ trước đó.
Thẻ:execution
--extra_toolchains=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các quy tắc chuỗi công cụ cần được xem xét trong quá trình phân giải chuỗi công cụ. Bạn có thể chỉ định chuỗi công cụ theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các chuỗi công cụ này sẽ được xem xét trước những chuỗi công cụ được khai báo trong tệp WORKSPACE bằng register_toolchains().
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--grte_top=<a label>
mặc định: xem nội dung mô tả-
Nhãn cho một thư viện libc đã đăng ký. Giá trị mặc định được chọn theo chuỗi công cụ crosstool và bạn hầu như không bao giờ cần ghi đè giá trị này.
Thẻ:action_command_lines
,affects_outputs
--host_compiler=<a string>
mặc định: xem nội dung mô tả-
Cờ không hoạt động. Sẽ bị xoá trong một bản phát hành sau này.
Thẻ:loading_and_analysis
,execution
--host_grte_top=<a label>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, chế độ cài đặt này sẽ ghi đè thư mục cấp cao nhất libc (--grte_top) cho cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_platform=<a build target label>
mặc định: "@bazel_tools//tools:host_platform"-
Nhãn của một quy tắc nền tảng mô tả hệ thống máy chủ.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--[no]incompatible_bazel_test_exec_run_under
mặc định: "false"-
Nếu được bật, "bazel test --run_under=//:runner" sẽ tạo "//:runner" trong cấu hình exec. Nếu bị tắt, thao tác này sẽ tạo "//:runner" trong cấu hình đích. Bazel thực thi các kiểm thử trên các máy thực thi, vì vậy, phương án đầu tiên chính xác hơn. Điều này không ảnh hưởng đến "bazel run", luôn tạo "`--run_under=//foo" trong cấu hình mục tiêu.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features
mặc định: "true"-
Nếu đúng, Bazel sẽ không bật các tính năng "host" và "nonhost" trong chuỗi công cụ c++ (xem https://github.com/bazelbuild/bazel/issues/7407 để biết thêm thông tin).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enable_apple_toolchain_resolution
mặc định: "false"-
Sử dụng độ phân giải chuỗi công cụ để chọn Apple SDK cho các quy tắc của Apple (Starlark và gốc)
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_remove_legacy_whole_archive
mặc định: "true"-
Nếu đúng, theo mặc định, Bazel sẽ không liên kết các phần phụ thuộc của thư viện dưới dạng toàn bộ kho lưu trữ (xem https://github.com/bazelbuild/bazel/issues/7362 để biết hướng dẫn di chuyển).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_strip_executable_safely
mặc định: "false"-
Nếu đúng, thao tác xoá cho các tệp thực thi sẽ sử dụng cờ -x. Cờ này không làm gián đoạn quá trình phân giải biểu tượng động.
Thẻ:action_command_lines
,incompatible_change
-
Sử dụng các đối tượng dùng chung của giao diện nếu được chuỗi công cụ hỗ trợ. Tất cả các chuỗi công cụ ELF hiện đều hỗ trợ chế độ cài đặt này.
Thẻ:loading_and_analysis
,affects_outputs
,affects_outputs
--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của iOS SDK cần dùng để tạo ứng dụng iOS. Nếu không được chỉ định, sẽ sử dụng phiên bản iOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của SDK macOS cần dùng để tạo các ứng dụng macOS. Nếu không được chỉ định, sẽ sử dụng phiên bản SDK macOS mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--minimum_os_version=<a string>
mặc định: xem nội dung mô tả-
Phiên bản hệ điều hành tối thiểu mà mục tiêu biên dịch của bạn hướng đến.
Thẻ:loading_and_analysis
,affects_outputs
--platform_mappings=<a main workspace-relative path>
mặc định: ""-
Vị trí của một tệp ánh xạ mô tả nền tảng cần sử dụng nếu không có nền tảng nào được đặt hoặc cờ cần đặt khi đã có nền tảng. Phải tương ứng với thư mục gốc của không gian làm việc chính. Mặc định là "platform_mappings" (một tệp ngay bên dưới thư mục gốc của không gian làm việc).
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
,immutable
--platforms=<a build target label>
mặc định: ""-
Nhãn của các quy tắc nền tảng mô tả nền tảng mục tiêu cho lệnh hiện tại.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--python_path=<a string>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối của trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--python_top=<a build target label>
mặc định: xem nội dung mô tả-
Nhãn của py_runtime đại diện cho trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản SDK tvOS cần dùng để tạo ứng dụng tvOS. Nếu không được chỉ định, sẽ sử dụng phiên bản tvOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của watchOS SDK cần dùng để tạo ứng dụng watchOS. Nếu không được chỉ định, hãy sử dụng phiên bản watchOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--xcode_version=<a string>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, hãy sử dụng Xcode của phiên bản đã cho cho các thao tác xây dựng có liên quan. Nếu không chỉ định, hãy sử dụng phiên bản mặc định của trình thực thi Xcode.
Thẻ:loses_incremental_state
--xcode_version_config=<a build target label>
mặc định: "@bazel_tools//tools/cpp:host_xcodes"-
Nhãn của quy tắc xcode_config sẽ được dùng để chọn phiên bản Xcode trong cấu hình bản dựng.
Thẻ:loses_incremental_state
,loading_and_analysis
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]apple_generate_dsym
mặc định: "false"-
Có tạo (các) tệp biểu tượng gỡ lỗi (.dSYM) hay không.
Thẻ:affects_outputs
,action_command_lines
--[no]build_runfile_links
mặc định: "true"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfile cho tất cả các mục tiêu. Nếu là false, chỉ ghi các tệp này khi cần thiết theo lệnh chạy, kiểm thử hoặc thao tác cục bộ.
Thẻ:affects_outputs
--[no]build_runfile_manifests
mặc định: "true"-
Nếu đúng, hãy ghi tệp kê khai runfile cho tất cả các mục tiêu. Nếu là false, hãy bỏ qua các giá trị này. Các kiểm thử cục bộ sẽ không chạy được khi có giá trị false.
Thẻ:affects_outputs
--[no]build_test_dwp
mặc định: "false"-
Nếu được bật, khi tạo các bài kiểm thử C++ một cách tĩnh và bằng cách phân hạch, tệp .dwp cho tệp nhị phân kiểm thử cũng sẽ được tạo tự động.
Thẻ:loading_and_analysis
,affects_outputs
--cc_proto_library_header_suffixes=<comma-separated set of options>
mặc định: ".pb.h"-
Đặt hậu tố của các tệp tiêu đề mà cc_proto_library tạo.
Thẻ:affects_outputs
,loading_and_analysis
--cc_proto_library_source_suffixes=<comma-separated set of options>
mặc định: ".pb.cc"-
Đặt hậu tố của các tệp nguồn mà cc_proto_library tạo ra.
Thẻ:affects_outputs
,loading_and_analysis
--[no]experimental_proto_descriptor_sets_include_source_info
mặc định: "false"-
Chạy các thao tác bổ sung cho các phiên bản API Java thay thế trong proto_library.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_save_feature_state
mặc định: "false"-
Lưu trạng thái của các tính năng đã bật và được yêu cầu dưới dạng đầu ra của quá trình biên dịch.
Thẻ:affects_outputs
,experimental
--fission=<a set of compilation modes>
mặc định: "no"-
Chỉ định chế độ biên dịch nào sử dụng phân hạch cho các hoạt động biên dịch và liên kết C++. Có thể là bất kỳ tổ hợp nào của {'fastbuild', 'dbg', 'opt'} hoặc các giá trị đặc biệt "yes" để bật tất cả các chế độ và "no" để tắt tất cả các chế độ.
Thẻ:loading_and_analysis
,action_command_lines
,affects_outputs
--[no]incompatible_always_include_files_in_data
mặc định: "true"-
Nếu đúng, các quy tắc gốc sẽ thêm <code>DefaultInfo.files</code> của các phần phụ thuộc dữ liệu vào runfiles, khớp với hành vi được đề xuất cho các quy tắc Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid).
Thẻ:affects_outputs
,incompatible_change
--[no]legacy_external_runfiles
mặc định: "false"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfiles cho các kho lưu trữ bên ngoài trong .runfiles/wsname/external/repo (ngoài .runfiles/repo).
Thẻ:affects_outputs
--[no]objc_generate_linkmap
mặc định: "false"-
Chỉ định xem có tạo tệp linkmap hay không.
Thẻ:affects_outputs
--[no]save_temps
mặc định: "false"-
Nếu được đặt, các kết quả tạm thời từ gcc sẽ được lưu. Các tệp này bao gồm tệp .s (mã hợp ngữ), tệp .i (C đã xử lý trước) và tệp .ii (C++ đã xử lý trước).
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, thay vì sự tồn tại của đầu ra:
--action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--allowed_cpu_values=<comma-separated set of options>
mặc định: ""-
Các giá trị được phép cho cờ --cpu.
Thẻ:changes_inputs
,affects_outputs
--[no]android_databinding_use_androidx
mặc định: "true"-
Tạo các tệp liên kết dữ liệu tương thích với AndroidX. Chỉ dùng với tính năng liên kết dữ liệu phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]android_databinding_use_v3_4_args
mặc định: "true"-
Sử dụng android databinding phiên bản 2 với đối số 3.4.0. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--android_dynamic_mode=<off, default or fully>
mặc định: "tắt"-
Xác định xem các phần phụ thuộc C++ của các quy tắc Android sẽ được liên kết một cách linh động khi cc_binary không tạo rõ ràng một thư viện dùng chung hay không. "default" có nghĩa là bazel sẽ chọn có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:affects_outputs
,loading_and_analysis
--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency>
mặc định: "theo bảng chữ cái"-
Đặt thứ tự của các tệp kê khai được truyền đến trình sáp nhập tệp kê khai cho các tệp nhị phân Android. ALPHABETICAL nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với execroot. ALPHABETICAL_BY_CONFIGURATION có nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với thư mục cấu hình trong thư mục đầu ra. DEPENDENCY có nghĩa là các tệp kê khai được sắp xếp theo thứ tự, trong đó tệp kê khai của mỗi thư viện sẽ xuất hiện trước tệp kê khai của các phần phụ thuộc.
Thẻ:action_command_lines
,execution
--[no]android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
--[no]build_python_zip
mặc định: "auto"-
Tạo tệp zip thực thi Python; bật trên Windows, tắt trên các nền tảng khác
Thẻ:affects_outputs
--catalyst_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple Catalyst.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]collect_code_coverage
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ đo lường mã (sử dụng tính năng đo lường ngoại tuyến nếu có thể) và sẽ thu thập thông tin về mức độ phù hợp trong quá trình kiểm thử. Chỉ những mục tiêu khớp với --instrumentation_filter mới bị ảnh hưởng. Thông thường, bạn không nên chỉ định trực tiếp lựa chọn này mà nên dùng lệnh "bazel coverage".
Thẻ:affects_outputs
--compilation_mode=<fastbuild, dbg or opt>
[-c
] mặc định: "fastbuild"-
Chỉ định chế độ mà tệp nhị phân sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn C.
Thẻ:action_command_lines
,affects_outputs
--copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc.
Thẻ:action_command_lines
,affects_outputs
--cpu=<a string>
mặc định: ""-
CPU mục tiêu.
Thẻ:changes_inputs
,affects_outputs
--cs_fdo_absolute_path=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ CSFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên đường dẫn tuyệt đối của tệp zip chứa tệp hồ sơ, tệp hồ sơ LLVM thô hoặc được lập chỉ mục.
Thẻ:affects_outputs
--cs_fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo các tệp nhị phân bằng tính năng đo lường FDO theo ngữ cảnh. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--cs_fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
cs_fdo_profile đại diện cho hồ sơ theo ngữ cảnh sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch các tệp nguồn C++.
Thẻ:action_command_lines
,affects_outputs
--define=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lựa chọn --define chỉ định một phép gán cho biến bản dựng. Trong trường hợp có nhiều giá trị cho một biến, giá trị cuối cùng sẽ được dùng.
Thẻ:changes_inputs
,affects_outputs
--dynamic_mode=<off, default or fully>
mặc định: "default"-
Xác định xem các tệp nhị phân C++ sẽ được liên kết một cách linh động hay không. "default" có nghĩa là Bazel sẽ chọn xem có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:loading_and_analysis
,affects_outputs
--[no]enable_propeller_optimize_absolute_paths
mặc định: "true"-
Nếu được đặt, mọi việc sử dụng đường dẫn tuyệt đối để tối ưu hoá cánh quạt sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_remaining_fdo_absolute_paths
mặc định: "true"-
Nếu bạn đặt chính sách này, mọi việc sử dụng đường dẫn tuyệt đối cho FDO sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_runfiles
mặc định: "auto"-
Bật cây liên kết tượng trưng runfiles; Theo mặc định, chế độ này sẽ tắt trên Windows và bật trên các nền tảng khác.
Thẻ:affects_outputs
--experimental_action_listener=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Ngừng sử dụng và thay bằng các khía cạnh. Sử dụng action_listener để đính kèm extra_action vào các thao tác xây dựng hiện có.
Thẻ:execution
,experimental
--[no]experimental_android_compress_java_resources
mặc định: "false"-
Nén tài nguyên Java trong APK
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_databinding_v2
mặc định: "true"-
Sử dụng tính năng liên kết dữ liệu Android phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_rewrite_dexes_with_rex
mặc định: "false"-
sử dụng công cụ rex để viết lại các tệp dex
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_collect_code_coverage_for_generated_files
mặc định: "false"-
Nếu được chỉ định, Bazel cũng sẽ tạo thông tin thu thập mức độ phù hợp cho các tệp đã tạo.
Thẻ:affects_outputs
,experimental
--experimental_objc_fastbuild_options=<comma-separated list of options>
mặc định: "-O0,-DDEBUG=1"-
Sử dụng các chuỗi này làm lựa chọn trình biên dịch fastbuild objc.
Thẻ:action_command_lines
--[no]experimental_omitfp
mặc định: "false"-
Nếu đúng, hãy dùng libunwind để huỷ ngăn xếp và biên dịch bằng -fomit-frame-pointer và -fasynchronous-unwind-tables.
Thẻ:action_command_lines
,affects_outputs
,experimental
--experimental_output_paths=<off, content or strip>
mặc định: "tắt"-
Nên dùng mô hình nào để quy tắc ghi đầu ra ở đâu trong cây đầu ra, đặc biệt là đối với các bản dựng đa nền tảng / đa cấu hình. Đây là một tính năng thử nghiệm. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/6526 để biết thông tin chi tiết. Các thao tác Starlark có thể chọn tham gia vào việc liên kết đường dẫn bằng cách thêm khoá "supports-path-mapping" vào từ điển "execution_requirements".
Thẻ:loses_incremental_state
,bazel_internal_configuration
,affects_outputs
,execution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi mục nhập phải có dạng label=value, trong đó label đề cập đến một nền tảng và values là tên viết tắt mong muốn dùng trong đường dẫn đầu ra. Chỉ được dùng khi --experimental_platform_in_output_dir là true. Có mức độ ưu tiên đặt tên cao nhất.
Thẻ:affects_outputs
,experimental
--[no]experimental_platform_in_output_dir
mặc định: "false"-
Nếu đúng, tên viết tắt của nền tảng mục tiêu sẽ được dùng trong tên thư mục đầu ra thay vì CPU. Lược đồ chính xác là thử nghiệm và có thể thay đổi: Trước tiên, trong trường hợp hiếm gặp khi lựa chọn --platforms không có chính xác một giá trị, thì hàm băm của lựa chọn platforms sẽ được sử dụng. Tiếp theo, nếu có tên ngắn nào cho nền tảng hiện tại được đăng ký bằng --experimental_override_name_platform_in_output_dir, thì tên ngắn đó sẽ được dùng. Sau đó, nếu bạn đặt --experimental_use_platforms_in_output_dir_legacy_heuristic, hãy dùng tên ngắn dựa trên Nhãn nền tảng hiện tại. Cuối cùng, hàm băm của lựa chọn nền tảng sẽ được dùng làm phương án cuối cùng.
Thẻ:affects_outputs
,experimental
--[no]experimental_py_binaries_include_label
mặc định: "false"-
Các mục tiêu py_binary bao gồm cả nhãn của chúng ngay cả khi tính năng đóng dấu bị tắt.
Thẻ:affects_outputs
,experimental
--[no]experimental_use_llvm_covmap
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ tạo thông tin về bản đồ mức độ phù hợp llvm-cov thay vì gcov khi collect_code_coverage được bật.
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_use_platforms_in_output_dir_legacy_heuristic
mặc định: "true"-
Vui lòng chỉ sử dụng cờ này trong quá trình di chuyển hoặc thử nghiệm theo đề xuất. Xin lưu ý rằng phương pháp phỏng đoán này có những điểm thiếu sót đã biết và bạn nên di chuyển để chỉ dựa vào --experimental_override_name_platform_in_output_dir.
Thẻ:affects_outputs
,experimental
--fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo tệp nhị phân bằng tính năng đo lường FDO. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--fdo_optimize=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ FDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của một tệp zip chứa cây tệp .gcda, một tệp afdo chứa hồ sơ tự động hoặc một tệp hồ sơ LLVM. Cờ này cũng chấp nhận các tệp được chỉ định dưới dạng nhãn (ví dụ: `//foo/bar:file.afdo` – bạn có thể cần thêm chỉ thị `exports_files` vào gói tương ứng) và các nhãn trỏ đến mục tiêu `fdo_profile`. Cờ này sẽ được thay thế bằng quy tắc "fdo_profile".
Thẻ:affects_outputs
--fdo_prefetch_hints=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng gợi ý tìm nạp trước bộ nhớ đệm.
Thẻ:affects_outputs
--fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
fdo_profile đại diện cho hồ sơ sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt cho các mục tiêu được tạo trong cấu hình mục tiêu. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực. Xem thêm --host_features
Các thẻ:changes_inputs
,affects_outputs
--[no]force_pic
mặc định: "false"-
Nếu được bật, tất cả các bản biên dịch C++ sẽ tạo ra mã độc lập với vị trí ("-fPIC"), các đường liên kết ưu tiên các thư viện được tạo sẵn PIC hơn các thư viện không phải PIC và các đường liên kết tạo ra các tệp thực thi độc lập với vị trí ("-pie").
Thẻ:loading_and_analysis
,affects_outputs
--host_action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình thực thi. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt>
mặc định: "opt"-
Chỉ định chế độ mà các công cụ được dùng trong quá trình tạo sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--host_conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình biên dịch C khi biên dịch các tệp nguồn C (nhưng không phải C++) trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_cpu=<a string>
mặc định: ""-
CPU lưu trữ.
Thẻ:changes_inputs
,affects_outputs
--host_cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C++ cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt đối với các mục tiêu được tạo trong cấu hình thực thi. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực.
Thẻ:changes_inputs
,affects_outputs
--host_force_python=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Ghi đè phiên bản Python cho cấu hình exec. Có thể là "PY2" hoặc "PY3".
Thẻ:loading_and_analysis
,affects_outputs
--host_linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình liên kết khi liên kết các công cụ trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu lưu trữ. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc truyền đến trình biên dịch C/C++ khi biên dịch một số tệp trong cấu hình thực thi. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--[no]incompatible_auto_exec_groups
mặc định: "false"-
Khi được bật, một nhóm thực thi sẽ tự động được tạo cho mỗi chuỗi công cụ mà một quy tắc sử dụng. Để quy tắc này hoạt động, bạn cần chỉ định tham số "toolchain" cho các thao tác của quy tắc. Để biết thêm thông tin, hãy xem https://github.com/bazelbuild/bazel/issues/17134.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_merge_genfiles_directory
mặc định: "true"-
Nếu đúng, thư mục genfiles sẽ được gộp vào thư mục bin.
Thẻ:affects_outputs
,incompatible_change
--[no]instrument_test_targets
mặc định: "false"-
Khi bật tính năng đo lường mức độ phù hợp, hãy chỉ định xem có nên cân nhắc việc đo lường các quy tắc kiểm thử hay không. Khi được đặt, các quy tắc kiểm thử do --instrumentation_filter bao gồm sẽ được đo lường. Nếu không, các quy tắc kiểm thử sẽ luôn bị loại trừ khỏi hoạt động đo lường mức độ sử dụng.
Thẻ:affects_outputs
--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
default: "-/javatests[/:],-/test/java[/:]"-
Khi tính năng đo lường mức độ phù hợp được bật, chỉ những quy tắc có tên được đưa vào bộ lọc dựa trên biểu thức chính quy đã chỉ định mới được đo lường. Thay vào đó, các quy tắc có tiền tố "-" sẽ bị loại trừ. Xin lưu ý rằng chỉ các quy tắc không phải quy tắc kiểm thử mới được đo lường, trừ phi bạn bật --instrument_test_targets.
Thẻ:affects_outputs
--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS tối thiểu tương thích với các trình mô phỏng và thiết bị mục tiêu. Nếu không chỉ định, hãy sử dụng "ios_sdk_version".
Thẻ:loses_incremental_state
--ios_multi_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo ios_application. Kết quả là một tệp nhị phân phổ quát chứa tất cả các cấu trúc được chỉ định.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]legacy_whole_archive
mặc định: "true"-
Không được dùng nữa, được thay thế bằng --incompatible_remove_legacy_whole_archive (xem https://github.com/bazelbuild/bazel/issues/7362 để biết thông tin chi tiết). Khi bật, hãy sử dụng --whole-archive cho các quy tắc cc_binary có linkshared=True và linkstatic=True hoặc "-static" trong linkopts. Điều này chỉ nhằm mục đích tương thích ngược. Một lựa chọn thay thế tốt hơn là sử dụng alwayslink=1 khi cần.
Thẻ:action_command_lines
,affects_outputs
,deprecated
--linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi liên kết.
Thẻ:action_command_lines
,affects_outputs
--ltobackendopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước phụ trợ LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--ltoindexopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước lập chỉ mục LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--macos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple macOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--memprof_profile=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng hồ sơ memprof.
Thẻ:affects_outputs
--[no]objc_debug_with_GLIBCXX
mặc định: "false"-
Nếu được đặt và chế độ biên dịch được đặt thành "dbg", hãy xác định GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC và GLIBCPP_CONCEPT_CHECKS.
Thẻ:action_command_lines
--[no]objc_enable_binary_stripping
mặc định: "false"-
Có thực hiện việc xoá ký hiệu và mã không dùng đến trên các tệp nhị phân được liên kết hay không. Thao tác xoá nhị phân sẽ được thực hiện nếu bạn chỉ định cả cờ này và --compilation_mode=opt.
Thẻ:action_command_lines
--objccopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn Objective-C/C++.
Thẻ:action_command_lines
--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền có chọn lọc đến gcc khi biên dịch một số tệp. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc chuyển đến phần phụ trợ LTO (trong --features=thin_lto) khi biên dịch một số đối tượng phụ trợ nhất định. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ. option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 sẽ thêm tuỳ chọn dòng lệnh -O0 vào dòng lệnh phụ trợ LTO của tất cả các tệp o trong //foo/ ngoại trừ bar.o.
Thẻ:action_command_lines
,affects_outputs
--platform_suffix=<a string>
mặc định: xem nội dung mô tả-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:loses_incremental_state
,affects_outputs
,loading_and_analysis
--propeller_optimize=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ Propeller để tối ưu hoá mục tiêu bản dựng.Hồ sơ Propeller phải bao gồm ít nhất một trong hai tệp, đó là hồ sơ cc và hồ sơ ld. Cờ này chấp nhận một nhãn bản dựng phải tham chiếu đến các tệp đầu vào hồ sơ cánh quạt. Ví dụ: tệp BUILD xác định nhãn, trong a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",)Bạn có thể phải thêm chỉ thị exports_files vào gói tương ứng để Bazel có thể nhìn thấy các tệp này. Bạn phải sử dụng lựa chọn này dưới dạng: --propeller_optimize=//a/b:propeller_profile
Thẻ:action_command_lines
,affects_outputs
--propeller_optimize_absolute_cc_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp cc_profile cho bản dựng được tối ưu hoá Propeller.
Thẻ:affects_outputs
--propeller_optimize_absolute_ld_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp ld_profile cho các bản dựng được tối ưu hoá bằng Propeller.
Thẻ:affects_outputs
--run_under=<a prefix in front of command>
mặc định: xem nội dung mô tả-
Tiền tố cần chèn trước các tệp thực thi cho lệnh "test" và "run". Nếu giá trị là "foo -bar" và dòng lệnh thực thi là "test_binary -baz", thì dòng lệnh cuối cùng là "foo -bar test_binary -baz".Đây cũng có thể là nhãn cho mục tiêu có thể thực thi. Một số ví dụ là: "valgrind", "strace", "strace -c", "valgrind --quiet --num-callers=20", "//package:target", "//package:target --options".
Thẻ:action_command_lines
-
Nếu đúng, các thư viện gốc có chức năng giống nhau sẽ được chia sẻ giữa các mục tiêu khác nhau
Thẻ:loading_and_analysis
,affects_outputs
--[no]stamp
mặc định: "false"-
Đóng dấu tệp nhị phân bằng ngày, tên người dùng, tên máy chủ, thông tin về không gian làm việc, v.v.
Thẻ:affects_outputs
--strip=<always, sometimes or never>
mặc định: "sometimes"-
Chỉ định có xoá các tệp nhị phân và thư viện dùng chung hay không (bằng cách sử dụng "-Wl,--strip-debug"). Giá trị mặc định của "sometimes" có nghĩa là chỉ xoá nếu --compilation_mode=fastbuild.
Thẻ:affects_outputs
--stripopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến strip khi tạo tệp nhị phân "<name>.stripped".
Thẻ:action_command_lines
,affects_outputs
--tvos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple tvOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản tvOS tối thiểu tương thích cho các trình mô phỏng và thiết bị mục tiêu. Nếu không được chỉ định, sẽ sử dụng "tvos_sdk_version".
Thẻ:loses_incremental_state
--visionos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple visionOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple watchOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản watchOS tối thiểu tương thích với các thiết bị và trình mô phỏng mục tiêu. Nếu bạn không chỉ định, hệ thống sẽ dùng "watchos_sdk_version".
Thẻ:loses_incremental_state
--xbinary_fdo=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ XbinaryFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của hồ sơ nhị phân chéo mặc định. Khi được dùng cùng với --fdo_instrument/--fdo_optimize/--fdo_profile, các lựa chọn đó sẽ luôn được ưu tiên như thể xbinary_fdo không bao giờ được chỉ định.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_licenses
mặc định: "false"-
Kiểm tra để đảm bảo rằng các ràng buộc về việc cấp phép do các gói phụ thuộc áp đặt không xung đột với các chế độ phân phối của những mục tiêu đang được tạo. Theo mặc định, giấy phép không được kiểm tra.
Thẻ:build_file_semantics
--[no]check_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi về khả năng hiển thị trong các phần phụ thuộc mục tiêu sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
--[no]desugar_for_android
mặc định: "true"- Có đơn giản hoá mã byte Java 8 trước khi dexing hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]desugar_java8_libs
mặc định: "false"-
Có đưa các thư viện Java 8 được hỗ trợ vào ứng dụng cho các thiết bị cũ hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]enforce_constraints
mặc định: "true"-
Kiểm tra các môi trường mà mỗi mục tiêu tương thích và báo cáo lỗi nếu có mục tiêu nào có các phần phụ thuộc không hỗ trợ cùng một môi trường
Thẻ:build_file_semantics
--[no]experimental_check_desugar_deps
mặc định: "true"-
Có nên kiểm tra kỹ việc khử đường cú pháp chính xác ở cấp nhị phân Android hay không.
Thẻ:eagerness_to_exit
,loading_and_analysis
,experimental
--experimental_import_deps_checking=<a string>
mặc định: xem nội dung mô tả-
Không có thao tác, chỉ giữ lại để đảm bảo khả năng tương thích ngược
Thẻ:loading_and_analysis
--experimental_one_version_enforcement=<off, warning or error>
mặc định: "TẮT"-
Khi được bật, hãy thực thi rằng quy tắc java_binary không được chứa nhiều phiên bản của cùng một tệp lớp trên đường dẫn lớp. Quy trình thực thi này có thể làm hỏng bản dựng hoặc chỉ dẫn đến cảnh báo.
Thẻ:loading_and_analysis
--experimental_strict_java_deps=<off, warn, error, strict or default>
mặc định: "default"-
Nếu đúng, hãy kiểm tra để đảm bảo rằng một mục tiêu Java khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng các phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]incompatible_check_testonly_for_output_files
mặc định: "false"-
Nếu được bật, hãy kiểm tra testonly đối với các mục tiêu tiên quyết là tệp đầu ra bằng cách tra cứu testonly của quy tắc tạo. Thao tác này khớp với việc kiểm tra khả năng hiển thị.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_check_visibility_for_toolchains
mặc định: "false"-
Nếu được bật, quy trình kiểm tra khả năng hiển thị cũng áp dụng cho các hoạt động triển khai chuỗi công cụ.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_native_android_rules
mặc định: "false"-
Nếu bạn bật chính sách này, thì việc sử dụng trực tiếp các quy tắc gốc của Android sẽ bị vô hiệu hoá. Vui lòng sử dụng các quy tắc Starlark Android từ https://github.com/bazelbuild/rules_android
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_disable_native_apple_binary_rule
mặc định: "false"-
Không có thao tác. Vẫn được giữ lại để tương thích ngược.
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_python_disable_py2
mặc định: "true"-
Nếu đúng, việc sử dụng chế độ cài đặt Python 2 sẽ gây ra lỗi. Trong đó có python_version=PY2, srcs_version=PY2 và srcs_version=PY2ONLY. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15684 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]one_version_enforcement_on_java_tests
mặc định: "true"-
Khi được bật và experimental_one_version_enforcement được đặt thành một giá trị không phải NONE, hãy thực thi một phiên bản trên các mục tiêu java_test. Bạn có thể tắt cờ này để cải thiện hiệu suất kiểm thử gia tăng, nhưng sẽ bỏ lỡ các trường hợp vi phạm tiềm ẩn đối với một phiên bản.
Thẻ:loading_and_analysis
--python_native_rules_allowlist=<a build target label>
mặc định: xem nội dung mô tả-
Danh sách cho phép (mục tiêu package_group) để sử dụng khi thực thi --incompatible_python_disallow_native_rules.
Thẻ:loading_and_analysis
--[no]strict_filesets
mặc định: "false"-
Nếu bạn bật lựa chọn này, các nhóm tệp vượt quá ranh giới gói sẽ được báo cáo là lỗi.
Thẻ:build_file_semantics
,eagerness_to_exit
--strict_proto_deps=<off, warn, error, strict or default>
mặc định: "error"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--strict_public_imports=<off, warn, error, strict or default>
mặc định: "tắt"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được dùng trong "import public" dưới dạng mục tiêu được xuất.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--[no]strict_system_includes
mặc định: "false"-
Nếu đúng, các tiêu đề được tìm thấy thông qua đường dẫn bao gồm hệ thống (-isystem) cũng phải được khai báo.
Thẻ:loading_and_analysis
,eagerness_to_exit
--target_environment=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Khai báo môi trường mục tiêu của bản dựng này. Phải là một tham chiếu nhãn đến quy tắc "environment". Nếu được chỉ định, tất cả các mục tiêu cấp cao nhất phải tương thích với môi trường này.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến đầu ra ký của bản dựng:
--apk_signing_method=<v1, v2, v1_v2 or v4>
mặc định: "v1_v2"-
Triển khai để sử dụng ký APK
Thẻ:action_command_lines
,affects_outputs
,loading_and_analysis
--[no]device_debug_entitlements
mặc định: "true"-
Nếu bạn đặt và chế độ biên dịch không phải là "opt", thì các ứng dụng objc sẽ bao gồm các quyền gỡ lỗi khi ký.
Thẻ:changes_inputs
--ios_signing_cert_name=<a string>
mặc định: xem nội dung mô tả-
Tên chứng chỉ dùng để ký iOS. Nếu bạn không đặt chính sách này, thì trình duyệt sẽ quay lại sử dụng hồ sơ cung cấp. Có thể là lựa chọn ưu tiên về danh tính của chuỗi khoá của chứng chỉ hoặc (chuỗi con) tên chung của chứng chỉ, theo trang hướng dẫn của codesign (SIGNING IDENTITIES).
Thẻ:action_command_lines
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_disallow_legacy_py_provider
mặc định: "true"-
Không có thao tác, sẽ sớm bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_sdk_frameworks_attributes
mặc định: "false"-
Nếu đúng, hãy không cho phép các thuộc tính sdk_frameworks và weak_sdk_frameworks trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_objc_alwayslink_by_default
mặc định: "false"-
Nếu đúng, hãy đặt giá trị mặc định thành true cho các thuộc tính alwayslink trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_python_disallow_native_rules
mặc định: "false"-
Khi đúng, sẽ xảy ra lỗi khi sử dụng các quy tắc py_* tích hợp; thay vào đó, bạn nên sử dụng các quy tắc rule_python. Hãy xem https://github.com/bazelbuild/bazel/issues/17773 để biết thêm thông tin và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]allow_analysis_failures
mặc định: "false"-
Nếu đúng, lỗi phân tích của mục tiêu quy tắc sẽ dẫn đến việc mục tiêu truyền một thực thể AnalysisFailureInfo chứa nội dung mô tả lỗi, thay vì dẫn đến lỗi bản dựng.
Thẻ:loading_and_analysis
,experimental
--analysis_testing_deps_limit=<an integer>
mặc định: "2000"-
Đặt số lượng tối đa các phần phụ thuộc bắc cầu thông qua một thuộc tính quy tắc có quá trình chuyển đổi cấu hình for_analysis_testing. Nếu vượt quá giới hạn này, bạn sẽ gặp lỗi về quy tắc.
Thẻ:loading_and_analysis
--[no]break_build_on_parallel_dex2oat_failure
mặc định: "false"-
Nếu đúng, các lỗi hành động dex2oat sẽ khiến bản dựng bị gián đoạn thay vì thực thi dex2oat trong thời gian chạy kiểm thử.
Thẻ:loading_and_analysis
,experimental
--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g. memory=10,30,60,100>
nhiều mục đích sử dụng được tích luỹ- Ghi đè số lượng tài nguyên mặc định cho các bài kiểm thử. Định dạng dự kiến là <resource>=<value>. Nếu một số dương duy nhất được chỉ định làm <value>, thì số đó sẽ ghi đè các tài nguyên mặc định cho tất cả các kích thước kiểm thử. Nếu bạn chỉ định 4 số được phân tách bằng dấu phẩy, thì các số này sẽ ghi đè số lượng tài nguyên cho các kích thước kiểm thử nhỏ, trung bình, lớn và rất lớn tương ứng. Các giá trị cũng có thể là HOST_RAM/HOST_CPU, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4). Các tài nguyên kiểm thử mặc định do cờ này chỉ định sẽ bị ghi đè bởi các tài nguyên rõ ràng được chỉ định trong thẻ.
--[no]experimental_android_use_parallel_dex2oat
mặc định: "false"-
Sử dụng dex2oat song song để có thể tăng tốc android_test.
Thẻ:loading_and_analysis
,host_machine_resource_optimizations
,experimental
--[no]ios_memleaks
mặc định: "false"-
Bật tính năng kiểm tra rò rỉ bộ nhớ trong các mục tiêu ios_test.
Thẻ:action_command_lines
--ios_simulator_device=<a string>
mặc định: xem nội dung mô tả-
Thiết bị cần mô phỏng khi chạy một ứng dụng iOS trong trình mô phỏng, ví dụ: "iPhone 6". Bạn có thể lấy danh sách thiết bị bằng cách chạy "xcrun simctl list devicetypes" trên máy mà trình mô phỏng sẽ chạy.
Thẻ:test_runner
--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS sẽ chạy trên trình mô phỏng khi chạy hoặc kiểm thử. Quy tắc này sẽ bị bỏ qua đối với các quy tắc ios_test nếu bạn chỉ định một thiết bị mục tiêu trong quy tắc.
Thẻ:test_runner
--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ- Chỉ định số lần chạy mỗi bài kiểm thử. Nếu bất kỳ lần thử nào trong số đó không thành công vì bất kỳ lý do nào, thì toàn bộ quy trình kiểm thử sẽ được coi là không thành công. Thông thường, giá trị bạn chỉ định chỉ là một số nguyên. Ví dụ: --runs_per_test=3 sẽ chạy tất cả các kiểm thử 3 lần. Cú pháp thay thế: regex_filter@runs_per_test. Trong đó runs_per_test là một giá trị nguyên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). Ví dụ: --runs_per_test=//foo/.*,-//foo/bar/.*@3 chạy tất cả các bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có mục nào trùng khớp, thì kiểm thử chỉ chạy một lần.
--test_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung sẽ được chèn vào môi trường trình chạy kiểm thử. Bạn có thể chỉ định các biến theo tên (trong trường hợp đó, giá trị của biến sẽ được đọc từ môi trường ứng dụng Bazel) hoặc theo cặp tên=giá trị. Bạn có thể sử dụng lựa chọn này nhiều lần để chỉ định một số biến. Chỉ được dùng bằng lệnh "bazel test".
Thẻ:test_runner
--test_timeout=<a single integer or comma-separated list of 4 integers>
mặc định: "-1"- Ghi đè các giá trị thời gian chờ kiểm thử mặc định cho thời gian chờ kiểm thử (tính bằng giây). Nếu bạn chỉ định một giá trị nguyên dương duy nhất, thì giá trị đó sẽ ghi đè tất cả danh mục. Nếu bạn chỉ định 4 số nguyên được phân tách bằng dấu phẩy, thì các số nguyên này sẽ thay thế thời gian chờ cho các khoảng thời gian ngắn, trung bình, dài và vĩnh viễn (theo thứ tự đó). Trong cả hai biểu mẫu, giá trị -1 cho biết blaze sẽ sử dụng thời gian chờ mặc định cho danh mục đó.
--[no]zip_undeclared_test_outputs
mặc định: "false"-
Nếu đúng, các đầu ra kiểm thử chưa khai báo sẽ được lưu trữ trong một tệp zip.
Thẻ:test_runner
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--[no]experimental_filter_library_jar_with_program_jar
mặc định: "false"-
Lọc ProGuard ProgramJar để xoá mọi lớp cũng có trong LibraryJar.
Thẻ:action_command_lines
,experimental
--[no]experimental_inmemory_dotd_files
mặc định: "true"-
Nếu được bật, các tệp .d C++ sẽ được truyền trực tiếp qua bộ nhớ từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_inmemory_jdeps_files
mặc định: "true"-
Nếu được bật, các tệp phần phụ thuộc (.jdeps) được tạo từ quá trình biên dịch Java sẽ được truyền qua bộ nhớ trực tiếp từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_retain_test_configuration_across_testonly
mặc định: "false"-
Khi được bật, --trim_test_configuration sẽ không cắt bớt cấu hình kiểm thử cho các quy tắc được đánh dấu testonly=1. Điều này nhằm mục đích giảm các vấn đề về xung đột hành động khi các quy tắc không phải quy tắc kiểm thử phụ thuộc vào các quy tắc cc_test. Không có hiệu lực nếu --trim_test_configuration là false.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_starlark_cc_import
mặc định: "false"-
Nếu được bật, bạn có thể sử dụng phiên bản Starlark của cc_import.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_unsupported_and_brittle_include_scanning
mặc định: "false"-
Có nên thu hẹp các đầu vào để biên dịch C/C++ bằng cách phân tích cú pháp các dòng #include từ tệp đầu vào hay không. Điều này có thể cải thiện hiệu suất và mức tăng bằng cách giảm kích thước của các cây đầu vào biên dịch. Tuy nhiên, điều này cũng có thể làm hỏng các bản dựng vì trình quét include không triển khai đầy đủ ngữ nghĩa của trình tiền xử lý C. Cụ thể, nó không hiểu các chỉ thị #include động và bỏ qua logic có điều kiện của trình tiền xử lý. Bạn tự chịu rủi ro khi sử dụng. Mọi vấn đề liên quan đến cờ hiệu này mà bạn gửi đều sẽ bị đóng.
Thẻ:loading_and_analysis
,execution
,changes_inputs
,experimental
--[no]incremental_dexing
mặc định: "true"-
Thực hiện hầu hết các thao tác dexing riêng cho từng tệp Jar.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]objc_use_dotd_pruning
mặc định: "true"-
Nếu được đặt, các tệp .d do clang phát ra sẽ được dùng để cắt bớt tập hợp các đầu vào được truyền vào quá trình biên dịch objc.
Thẻ:changes_inputs
,loading_and_analysis
--[no]process_headers_in_dependencies
mặc định: "false"-
Khi tạo một mục tiêu //a:a, hãy xử lý các tiêu đề trong tất cả các mục tiêu mà //a:a phụ thuộc vào (nếu bạn bật tính năng xử lý tiêu đề cho chuỗi công cụ).
Thẻ:execution
--[no]trim_test_configuration
mặc định: "true"-
Khi được bật, các lựa chọn liên quan đến kiểm thử sẽ bị xoá bên dưới cấp cao nhất của bản dựng. Khi cờ này đang hoạt động, các kiểm thử không thể được tạo dưới dạng các phần phụ thuộc của các quy tắc không phải kiểm thử, nhưng các thay đổi đối với các lựa chọn liên quan đến kiểm thử sẽ không khiến các quy tắc không phải kiểm thử được phân tích lại.
Thẻ:loading_and_analysis
,loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: "-.*"-
In thông tin gỡ lỗi trong quá trình phân giải chuỗi công cụ. Cờ này lấy một biểu thức chính quy, được kiểm tra dựa trên các loại chuỗi công cụ và mục tiêu cụ thể để xem mục tiêu nào cần gỡ lỗi. Bạn có thể phân tách nhiều biểu thức chính quy bằng dấu phẩy, sau đó mỗi biểu thức chính quy sẽ được kiểm tra riêng. Lưu ý: Đầu ra của cờ này rất phức tạp và có thể chỉ hữu ích cho các chuyên gia về độ phân giải chuỗi công cụ.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--flag_alias=<a 'name=value' flag alias>
nhiều mục đích sử dụng được tích luỹ-
Đặt tên viết tắt cho cờ Starlark. Hàm này nhận một cặp khoá-giá trị duy nhất dưới dạng "<key>=<value>" làm đối số.
Thẻ:changes_inputs
--[no]incompatible_default_to_explicit_init_py
mặc định: "false"-
Cờ này thay đổi hành vi mặc định để các tệp __init__.py không còn được tự động tạo trong runfiles của các mục tiêu Python nữa. Cụ thể, khi mục tiêu py_binary hoặc py_test có legacy_create_init được đặt thành "auto" (mặc định), thì mục tiêu đó sẽ được coi là false chỉ khi cờ này được đặt. Xem https://github.com/bazelbuild/bazel/issues/10076.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py2_outputs_are_suffixed
mặc định: "true"-
Nếu đúng, các mục tiêu được tạo trong cấu hình Python 2 sẽ xuất hiện trong một thư mục gốc đầu ra có hậu tố "-py2", trong khi các mục tiêu được tạo cho Python 3 sẽ xuất hiện trong một thư mục gốc không có hậu tố liên quan đến Python. Điều này có nghĩa là symlink tiện lợi `bazel-bin` sẽ trỏ đến các mục tiêu Python 3 thay vì Python 2. Nếu bật lựa chọn này, bạn cũng nên bật `--incompatible_py3_is_default`.
Các thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py3_is_default
mặc định: "true"-
Nếu đúng, các mục tiêu "py_binary" và "py_test" không đặt thuộc tính "python_version" (hoặc "default_python_version") sẽ mặc định là PY3 thay vì PY2. Nếu bạn đặt cờ này, bạn cũng nên đặt `--incompatible_py2_outputs_are_suffixed`.
Các thẻ:loading_and_analysis
,affects_outputs
,incompatible_change
--[no]incompatible_use_python_toolchains
mặc định: "true"-
Nếu bạn đặt thành true, các quy tắc Python gốc có thể thực thi sẽ sử dụng thời gian chạy Python do chuỗi công cụ Python chỉ định, thay vì thời gian chạy do các cờ cũ như --python_top cung cấp.
Thẻ:loading_and_analysis
,incompatible_change
--python_version=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Chế độ phiên bản chính của Python, có thể là "PY2" hoặc "PY3". Xin lưu ý rằng chế độ này sẽ bị ghi đè bởi các mục tiêu "py_binary" và "py_test" (ngay cả khi các mục tiêu đó không chỉ định rõ phiên bản) nên thường không có nhiều lý do để cung cấp cờ này.
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]cache_test_results
[-t
] mặc định: "auto"- Nếu được đặt thành "auto", Bazel sẽ chạy lại một kiểm thử nếu và chỉ nếu: (1) Bazel phát hiện thấy các thay đổi trong kiểm thử hoặc các phần phụ thuộc của kiểm thử, (2) kiểm thử được đánh dấu là bên ngoài, (3) nhiều lần chạy kiểm thử được yêu cầu bằng --runs_per_test hoặc(4) kiểm thử trước đó không thành công. Nếu được đặt thành "yes", Bazel sẽ lưu vào bộ nhớ đệm tất cả kết quả kiểm thử, ngoại trừ những kiểm thử được đánh dấu là bên ngoài. Nếu bạn đặt thành "no", Bazel sẽ không lưu vào bộ nhớ đệm bất kỳ kết quả kiểm thử nào.
--[no]experimental_cancel_concurrent_tests
mặc định: "false"-
Nếu đúng, Blaze sẽ huỷ các thử nghiệm đang chạy đồng thời trong lần chạy thành công đầu tiên. Tuỳ chọn này chỉ hữu ích khi kết hợp với --runs_per_test_detects_flakes.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_fetch_all_coverage_outputs
mặc định: "false"-
Nếu đúng, Bazel sẽ tìm nạp toàn bộ thư mục dữ liệu về mức độ phù hợp cho từng kiểm thử trong quá trình chạy mức độ phù hợp.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_generate_llvm_lcov
mặc định: "false"-
Nếu đúng, mức độ phù hợp cho clang sẽ tạo ra một báo cáo LCOV.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_j2objc_header_map
mặc định: "true"-
Có tạo bản đồ tiêu đề J2ObjC song song với quá trình chuyển đổi J2ObjC hay không.
Thẻ:experimental
--[no]experimental_j2objc_shorter_header_path
mặc định: "false"-
Có tạo bằng đường dẫn tiêu đề ngắn hơn hay không (sử dụng "_ios" thay vì "_j2objc").
Thẻ:affects_outputs
,experimental
--experimental_java_classpath=<off, javabuilder or bazel>
mặc định: "javabuilder"- Cho phép giảm đường dẫn lớp để biên dịch Java.
--[no]experimental_limit_android_lint_to_android_constrained_java
mặc định: "false"-
Không có thao tác, chỉ giữ lại để tương thích ngược
Thẻ:affects_outputs
,experimental
--[no]experimental_run_android_lint_on_java_rules
mặc định: "false"-
Có xác thực các nguồn java_* hay không.
Thẻ:affects_outputs
,experimental
--[no]explicit_java_test_deps
mặc định: "false"- Chỉ định rõ ràng một phần phụ thuộc vào JUnit hoặc Hamcrest trong java_test thay vì vô tình lấy từ các deps của TestRunner. Hiện tại, tính năng này chỉ hoạt động với bazel.
--host_java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java mà các công cụ được thực thi trong quá trình tạo bản dựng sử dụng.
--host_javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để truyền đến javac khi tạo các công cụ được thực thi trong quá trình tạo.
--host_jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến máy ảo Java khi tạo các công cụ được thực thi trong quá trình tạo. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của mỗi mục tiêu java_binary.
--[no]incompatible_check_sharding_support
mặc định: "true"-
Nếu đúng, Bazel sẽ không thực hiện được một kiểm thử phân đoạn nếu trình chạy kiểm thử không cho biết rằng trình chạy này hỗ trợ phân đoạn bằng cách chạm vào tệp tại đường dẫn trong TEST_SHARD_STATUS_FILE. Nếu là false, trình chạy kiểm thử không hỗ trợ phân đoạn sẽ khiến tất cả các kiểm thử chạy trong mỗi phân đoạn.
Thẻ:incompatible_change
--[no]incompatible_exclusive_test_sandboxed
mặc định: "true"-
Nếu đúng, các thử nghiệm độc quyền sẽ chạy với chiến lược hộp cát. Thêm thẻ "local" để buộc chạy thử nghiệm độc quyền cục bộ
Thẻ:incompatible_change
--[no]incompatible_strict_action_env
mặc định: "false"-
Nếu đặt là true, Bazel sẽ sử dụng một môi trường có giá trị tĩnh cho PATH và không kế thừa LD_LIBRARY_PATH. Sử dụng --action_env=ENV_VARIABLE nếu bạn muốn kế thừa các biến môi trường cụ thể từ máy khách, nhưng lưu ý rằng việc này có thể ngăn chặn việc lưu vào bộ nhớ đệm trên nhiều người dùng nếu bạn sử dụng bộ nhớ đệm dùng chung.
Thẻ:loading_and_analysis
,incompatible_change
--j2objc_translation_flags=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến công cụ J2ObjC.
--java_debug
-
Khiến máy ảo Java của một bài kiểm thử Java phải chờ kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như jdb) trước khi bắt đầu kiểm thử. Ngụ ý -test_output=streamed.
Mở rộng thành:
--test_arg=--wrapper_script_flag=--debug
--test_output=streamed
--test_strategy=exclusive
--test_timeout=9999
--nocache_test_results
--[no]java_deps
mặc định: "true"- Tạo thông tin về phần phụ thuộc (hiện tại là đường dẫn lớp thời gian biên dịch) cho mỗi mục tiêu Java.
--[no]java_header_compilation
mặc định: "true"- Biên dịch ijar trực tiếp từ nguồn.
--java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java
--java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java sẽ dùng khi tạo các tệp nhị phân Java. Nếu bạn đặt cờ này thành chuỗi trống, thì trình khởi chạy JDK sẽ được dùng. Thuộc tính "launcher" sẽ ghi đè cờ này.
--java_runtime_version=<a string>
mặc định: "local_jdk"- Phiên bản thời gian chạy Java
--javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến javac.
--jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để chuyển đến máy ảo Java. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của từng mục tiêu java_binary.
--legacy_main_dex_list_generator=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng tạo danh sách các lớp phải có trong dex chính khi biên dịch multidex cũ.
--optimizing_dexer=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng cho việc lập chỉ mục dex mà không cần phân đoạn.
--plugin=<a build target label>
nhiều mục đích sử dụng được tích luỹ- Các trình bổ trợ cần dùng trong bản dựng. Hiện hoạt động với java_plugin.
--proguard_top=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định phiên bản ProGuard sẽ dùng để xoá mã khi tạo một tệp nhị phân Java.
--proto_compiler=<a build target label>
mặc định: "@bazel_tools//tools/proto:protoc"-
Nhãn của trình biên dịch proto.
Thẻ:affects_outputs
,loading_and_analysis
--[no]proto_profile
mặc định: "true"- Có nên truyền profile_path đến trình biên dịch proto hay không.
Thẻ:affects_outputs
,loading_and_analysis
--proto_profile_path=<a build target label>
mặc định: xem nội dung mô tả-
Hồ sơ cần truyền đến trình biên dịch proto dưới dạng profile_path. Nếu bạn không đặt, nhưng --proto_profile là true (mặc định), thì sẽ suy ra đường dẫn từ --fdo_optimize.
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_cc=<a build target label>
default: "@bazel_tools//tools/proto:cc_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch proto C++
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_j2objc=<a build target label>
mặc định: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức j2objc
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_java=<a build target label>
mặc định: "@bazel_tools//tools/proto:java_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức Java
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_javalite=<a build target label>
mặc định: "@bazel_tools//tools/proto:javalite_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức JavaLite
Thẻ:affects_outputs
,loading_and_analysis
--protocopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch protobuf.
Thẻ:affects_outputs
--[no]runs_per_test_detects_flakes
mặc định: "false"- Nếu đúng, mọi phân đoạn có ít nhất một lần chạy/thử nghiệm thành công và ít nhất một lần chạy/thử nghiệm thất bại sẽ có trạng thái FLAKY.
--shell_executable=<a path>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối đến tệp thực thi shell mà Bazel sẽ dùng. Nếu bạn không đặt biến này, nhưng biến môi trường BAZEL_SH được đặt trong lệnh gọi Bazel đầu tiên (khởi động một máy chủ Bazel), thì Bazel sẽ sử dụng biến đó. Nếu bạn không đặt cả hai, Bazel sẽ sử dụng đường dẫn mặc định được mã hoá cứng, tuỳ thuộc vào hệ điều hành mà Bazel chạy trên đó (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, tất cả các hệ điều hành khác: /bin/bash). Xin lưu ý rằng việc sử dụng một trình bao không tương thích với bash có thể dẫn đến lỗi bản dựng hoặc lỗi thời gian chạy của các tệp nhị phân đã tạo.
Thẻ:loading_and_analysis
--test_arg=<a string>
nhiều mục đích sử dụng được tích luỹ- Chỉ định các lựa chọn và đối số bổ sung cần được truyền đến tệp thực thi kiểm thử. Có thể dùng nhiều lần để chỉ định một số đối số. Nếu nhiều kiểm thử được thực thi, mỗi kiểm thử sẽ nhận được các đối số giống hệt nhau. Chỉ được dùng bằng lệnh "bazel test".
--test_filter=<a string>
mặc định: xem nội dung mô tả- Chỉ định một bộ lọc để chuyển tiếp đến khung kiểm thử. Dùng để giới hạn số lượng bài kiểm thử được chạy. Xin lưu ý rằng điều này không ảnh hưởng đến những mục tiêu được tạo.
--test_result_expiration=<an integer>
mặc định: "-1"- Tuỳ chọn này không được dùng nữa và không có hiệu lực.
--[no]test_runner_fail_fast
mặc định: "false"- Chuyển tiếp lựa chọn thất bại nhanh đến trình chạy kiểm thử. Trình chạy kiểm thử sẽ dừng thực thi khi gặp lỗi đầu tiên.
--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce>
mặc định: "explicit"- Chỉ định chiến lược phân đoạn kiểm thử: "explicit" để chỉ sử dụng tính năng phân đoạn nếu có thuộc tính BUILD "shard_count". "disabled" để không bao giờ sử dụng tính năng phân đoạn kiểm thử. "forced=k" để thực thi "k" phân đoạn để kiểm thử bất kể thuộc tính BUILD "shard_count".
--tool_java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java dùng để thực thi các công cụ cần thiết trong quá trình tạo
--tool_java_runtime_version=<a string>
default: "remotejdk_11"- Phiên bản thời gian chạy Java được dùng để thực thi các công cụ trong quá trình tạo
--[no]use_ijars
mặc định: "true"- Nếu được bật, lựa chọn này sẽ khiến quá trình biên dịch Java sử dụng các tệp jar giao diện. Điều này sẽ giúp tăng tốc độ biên dịch gia tăng, nhưng thông báo lỗi có thể khác.
Các lựa chọn về cờ chuẩn hoá
Kế thừa tất cả các lựa chọn từ build.
- Các tuỳ chọn kiểm soát đầu ra của lệnh:
--[no]canonicalize_policy
mặc định: "false"-
Đưa ra chính sách chuẩn, sau khi mở rộng và lọc. Để giữ cho đầu ra rõ ràng, các đối số lệnh được chuẩn hoá sẽ KHÔNG xuất hiện khi bạn đặt tuỳ chọn này thành true. Lưu ý rằng lệnh do --for_command chỉ định sẽ ảnh hưởng đến chính sách được lọc và nếu không có lệnh nào được chỉ định, thì lệnh mặc định là "build".
Thẻ:affects_outputs
,terminal_output
--[no]experimental_include_default_values
mặc định: "true"-
Có bao gồm các lựa chọn Starlark được đặt thành giá trị mặc định trong đầu ra hay không.
Thẻ:affects_outputs
,terminal_output
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--for_command=<a string>
mặc định: "build"-
Lệnh mà các tuỳ chọn cần được chuẩn hoá.
Thẻ:affects_outputs
,terminal_output
--invocation_policy=<a string>
mặc định: ""-
Áp dụng một chính sách gọi đến các lựa chọn cần chuẩn hoá.
Thẻ:affects_outputs
,terminal_output
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
Các lựa chọn làm sạch
Kế thừa tất cả các lựa chọn từ build.
- Các tuỳ chọn kiểm soát đầu ra của lệnh:
--[no]async
mặc định: "false"-
Nếu đúng, quá trình dọn dẹp đầu ra sẽ không đồng bộ. Khi lệnh này hoàn tất, bạn có thể thực thi các lệnh mới trong cùng một ứng dụng một cách an toàn, ngay cả khi quá trình xoá vẫn tiếp tục diễn ra ở chế độ nền.
Thẻ:host_machine_resource_optimizations
--[no]expunge
mặc định: "false"-
Nếu đúng, lệnh clean sẽ xoá toàn bộ cây làm việc cho phiên bản bazel này, bao gồm tất cả các tệp đầu ra tạm thời và bản dựng do bazel tạo, đồng thời dừng máy chủ bazel nếu máy chủ này đang chạy.
Thẻ:host_machine_resource_optimizations
--expunge_async
-
Nếu được chỉ định, thao tác dọn dẹp sẽ xoá không đồng bộ toàn bộ cây đang hoạt động cho phiên bản bazel này, bao gồm tất cả các tệp đầu ra tạm thời và bản dựng do bazel tạo, đồng thời dừng máy chủ bazel nếu máy chủ này đang chạy. Khi lệnh này hoàn tất, bạn có thể thực thi các lệnh mới trong cùng một ứng dụng một cách an toàn, ngay cả khi quá trình xoá vẫn tiếp tục diễn ra ở chế độ nền.
Mở rộng thành:
--expunge
--async
Thẻ:host_machine_resource_optimizations
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Tuỳ chọn cấu hình
Các lựa chọn về mức độ phù hợp
Kế thừa tất cả các lựa chọn từ test.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Lựa chọn Cquery
Kế thừa tất cả các lựa chọn từ test.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của truy vấn:
--aspect_deps=<off, conservative or precise>
mặc định: "thận trọng"-
Cách giải quyết các phần phụ thuộc về khía cạnh khi định dạng đầu ra là một trong các định dạng {xml,proto,record}. "off" có nghĩa là không có sự phụ thuộc nào về khía cạnh được giải quyết, "conservative" (mặc định) có nghĩa là tất cả các sự phụ thuộc đã khai báo về khía cạnh đều được thêm vào bất kể chúng có được cung cấp lớp quy tắc về sự phụ thuộc trực tiếp hay không, "precise" có nghĩa là chỉ những khía cạnh có thể hoạt động được thêm vào khi có lớp quy tắc về sự phụ thuộc trực tiếp. Xin lưu ý rằng chế độ chính xác yêu cầu tải các gói khác để đánh giá một mục tiêu duy nhất, do đó, chế độ này sẽ chậm hơn các chế độ khác. Ngoài ra, hãy lưu ý rằng ngay cả chế độ chính xác cũng không hoàn toàn chính xác: quyết định có tính toán một khía cạnh hay không được quyết định trong giai đoạn phân tích, không chạy trong "bazel query".
Thẻ:build_file_semantics
--[no]consistent_labels
mặc định: "false"-
Nếu được bật, mọi lệnh truy vấn sẽ phát ra nhãn như thể bằng hàm <code>str</code> Starlark được áp dụng cho một thực thể <code>Label</code>. Điều này rất hữu ích cho những công cụ cần so khớp đầu ra của các lệnh truy vấn và/hoặc nhãn khác nhau do các quy tắc phát ra. Nếu không được bật, các trình định dạng đầu ra có thể phát ra tên kho lưu trữ rõ ràng (tương ứng với kho lưu trữ chính) thay vì để đầu ra dễ đọc hơn.
Thẻ:terminal_output
--[no]experimental_explicit_aspects
mặc định: "false"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]graph:factored
mặc định: "true"-
Nếu đúng, thì biểu đồ sẽ được phát ra "được phân tích", tức là các nút tương đương về mặt cấu trúc liên kết sẽ được hợp nhất với nhau và nhãn của chúng sẽ được nối. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--graph:node_limit=<an integer>
mặc định: "512"-
Độ dài tối đa của chuỗi nhãn cho một nút biểu đồ trong đầu ra. Các nhãn dài hơn sẽ bị cắt ngắn; -1 có nghĩa là không bị cắt ngắn. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--[no]implicit_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc ngầm sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Phần phụ thuộc ngầm ẩn là phần phụ thuộc không được chỉ định rõ ràng trong tệp BUILD nhưng được bazel thêm vào. Đối với cquery, lựa chọn này kiểm soát việc lọc các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--[no]include_aspects
mặc định: "true"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]incompatible_package_group_includes_double_slash
mặc định: "true"-
Nếu được bật, khi xuất thuộc tính "packages" của package_group, dấu "//" ở đầu sẽ không bị bỏ qua.
Thẻ:terminal_output
,incompatible_change
--[no]infer_universe_scope
mặc định: "false"-
Nếu được đặt và --universe_scope không được đặt, thì giá trị của --universe_scope sẽ được suy luận là danh sách các mẫu mục tiêu duy nhất trong biểu thức truy vấn. Xin lưu ý rằng giá trị --universe_scope được suy luận cho một biểu thức truy vấn sử dụng các hàm có phạm vi toàn cầu (ví dụ: "allrdeps") có thể không phải là giá trị bạn muốn, vì vậy, bạn chỉ nên sử dụng lựa chọn này nếu biết mình đang làm gì. Hãy xem https://bazel.build/reference/query#sky-query để biết thông tin chi tiết và ví dụ. Nếu bạn đặt --universe_scope, thì giá trị của lựa chọn này sẽ bị bỏ qua. Lưu ý: lựa chọn này chỉ áp dụng cho "query" (tức là không phải "cquery").
Thẻ:loading_and_analysis
--[no]line_terminator_null
mặc định: "false"-
Mỗi định dạng có kết thúc bằng \0 thay vì dòng mới hay không.
Thẻ:terminal_output
--[no]nodep_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc từ thuộc tính "nodep" sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một ví dụ phổ biến về thuộc tính "nodep" là "visibility". Chạy và phân tích cú pháp đầu ra của "info build-language" để tìm hiểu về tất cả các thuộc tính "nodep" trong ngôn ngữ bản dựng.
Thẻ:build_file_semantics
--output=<a string>
mặc định: "label"-
Định dạng mà kết quả cquery sẽ được in. Các giá trị được phép cho cquery là: label, label_kind, textproto, transitions, proto, streamed_proto, jsonproto. Nếu chọn "transitions", bạn cũng phải chỉ định lựa chọn --transitions=(lite|full).
Thẻ:terminal_output
--[no]proto:default_values
mặc định: "true"-
Nếu đúng, các thuộc tính có giá trị không được chỉ định rõ ràng trong tệp BUILD sẽ được đưa vào; nếu không, các thuộc tính đó sẽ bị bỏ qua. Tuỳ chọn này áp dụng cho --output=proto
Thẻ:terminal_output
--[no]proto:definition_stack
mặc định: "false"-
Điền vào trường proto definition_stack, ghi lại cho mỗi phiên bản quy tắc ngăn xếp lệnh gọi Starlark tại thời điểm xác định lớp của quy tắc.
Thẻ:terminal_output
--[no]proto:flatten_selects
mặc định: "true"-
Nếu được bật, các thuộc tính có thể định cấu hình do select() tạo sẽ được làm phẳng. Đối với các loại danh sách, biểu diễn được đơn giản hoá là một danh sách chứa chính xác một lần mỗi giá trị của bản đồ chọn. Các loại vô hướng được làm phẳng thành giá trị rỗng.
Thẻ:build_file_semantics
--[no]proto:include_attribute_source_aspects
mặc định: "false"-
Điền trường proto source_aspect_name của mỗi Thuộc tính bằng khía cạnh nguồn mà thuộc tính đó đến từ (chuỗi trống nếu không).
Thẻ:terminal_output
--[no]proto:include_configurations
mặc định: "true"-
nếu được bật, đầu ra proto sẽ bao gồm thông tin về các cấu hình. Khi bị vô hiệu hoá,định dạng đầu ra proto cquery sẽ giống với định dạng đầu ra của truy vấn.
Thẻ:affects_outputs
--[no]proto:include_synthetic_attribute_hash
mặc định: "false"-
Có tính toán và điền sẵn thuộc tính $internal_attr_hash hay không.
Thẻ:terminal_output
--[no]proto:instantiation_stack
mặc định: "false"-
Điền vào ngăn xếp lệnh gọi khởi tạo của từng quy tắc. Xin lưu ý rằng điều này yêu cầu phải có ngăn xếp
Thẻ:terminal_output
--[no]proto:locations
mặc định: "true"-
Có xuất thông tin vị trí trong đầu ra proto hay không.
Thẻ:terminal_output
--proto:output_rule_attrs=<comma-separated list of options>
mặc định: "all"-
Danh sách thuộc tính được phân tách bằng dấu phẩy để đưa vào đầu ra. Mặc định là tất cả các thuộc tính. Đặt thành chuỗi trống để không xuất bất kỳ thuộc tính nào. Tuỳ chọn này áp dụng cho --output=proto.
Thẻ:terminal_output
--[no]proto:rule_classes
mặc định: "false"-
Điền vào trường rule_class_key của mỗi quy tắc; và đối với quy tắc đầu tiên có một rule_class_key nhất định, hãy điền vào trường proto rule_class_info của quy tắc đó. Trường rule_class_key xác định duy nhất một lớp quy tắc và trường rule_class_info là một định nghĩa API lớp quy tắc theo định dạng Stardoc.
Thẻ:terminal_output
--[no]proto:rule_inputs_and_outputs
mặc định: "true"-
Có điền sẵn các trường rule_input và rule_output hay không.
Thẻ:terminal_output
--query_file=<a string>
mặc định: ""-
Nếu được đặt, truy vấn sẽ đọc truy vấn từ tệp có tên ở đây, thay vì trên dòng lệnh. Đã xảy ra lỗi khi chỉ định một tệp ở đây cũng như một truy vấn dòng lệnh.
Thẻ:changes_inputs
--[no]relative_locations
mặc định: "false"-
Nếu đúng, vị trí của các tệp BUILD trong đầu ra xml và proto sẽ là tương đối. Theo mặc định, đầu ra vị trí là một đường dẫn tuyệt đối và sẽ không nhất quán trên các máy. Bạn có thể đặt tuỳ chọn này thành true để có kết quả nhất quán trên các máy.
Thẻ:terminal_output
--show_config_fragments=<off, direct or transitive>
mặc định: "tắt"-
Cho biết các mảnh cấu hình mà một quy tắc và các phần phụ thuộc bắc cầu của quy tắc đó yêu cầu. Điều này có thể hữu ích khi đánh giá mức độ có thể cắt bớt của một biểu đồ mục tiêu đã định cấu hình.
Thẻ:affects_outputs
--starlark:expr=<a string>
mặc định: ""-
Một biểu thức Starlark để định dạng từng mục tiêu được định cấu hình ở chế độ --output=starlark của cquery. Mục tiêu đã định cấu hình được liên kết với "target". Nếu bạn không chỉ định --starlark:expr cũng như --starlark:file, thì tuỳ chọn này sẽ mặc định là "str(target.label)". Bạn không được chỉ định cả --starlark:expr và --starlark:file.
Thẻ:terminal_output
--starlark:file=<a string>
mặc định: ""- Tên của một tệp xác định hàm Starlark có tên là "format", có một đối số, được áp dụng cho từng mục tiêu đã định cấu hình để định dạng mục tiêu đó dưới dạng một chuỗi. Bạn không được chỉ định cả --starlark:expr và --starlark:file. Hãy xem phần trợ giúp cho --output=starlark để biết thêm thông tin chi tiết.
Thẻ:terminal_output
--[no]tool_deps
mặc định: "true"-
Truy vấn: Nếu bị vô hiệu hoá, các phần phụ thuộc vào "cấu hình thực thi" sẽ không được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một cạnh phần phụ thuộc "cấu hình exec", chẳng hạn như cạnh từ bất kỳ quy tắc "proto_library" nào đến Trình biên dịch giao thức, thường trỏ đến một công cụ được thực thi trong quá trình tạo thay vì một phần của cùng một chương trình "target".
Cquery: Nếu bị vô hiệu hoá, sẽ lọc ra tất cả các mục tiêu đã định cấu hình vượt qua quá trình chuyển đổi thực thi từ mục tiêu cấp cao nhất đã phát hiện ra mục tiêu đã định cấu hình này. Điều này có nghĩa là nếu mục tiêu cấp cao nhất nằm trong cấu hình mục tiêu, thì chỉ những mục tiêu được định cấu hình cũng nằm trong cấu hình mục tiêu mới được trả về. Nếu mục tiêu cấp cao nhất nằm trong cấu hình exec, thì chỉ các mục tiêu được định cấu hình exec mới được trả về. Lựa chọn này SẼ KHÔNG loại trừ các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--transitions=<full, lite or none>
mặc định: "none"-
Định dạng mà cquery sẽ in thông tin chuyển đổi.
Thẻ:affects_outputs
--universe_scope=<comma-separated list of options>
mặc định: ""-
Một nhóm mẫu mục tiêu được phân tách bằng dấu phẩy (bổ sung và trừ). Truy vấn có thể được thực hiện trong vũ trụ được xác định bằng bao đóng bắc cầu của các mục tiêu được chỉ định. Lựa chọn này được dùng cho các lệnh truy vấn và cquery.
Đối với cquery, đầu vào cho lựa chọn này là các mục tiêu mà tất cả câu trả lời được xây dựng theo đó, vì vậy, lựa chọn này có thể ảnh hưởng đến các cấu hình và quá trình chuyển đổi. Nếu bạn không chỉ định lựa chọn này, thì các mục tiêu cấp cao nhất sẽ được giả định là các mục tiêu được phân tích cú pháp từ biểu thức truy vấn. Lưu ý: Đối với cquery, việc không chỉ định lựa chọn này có thể khiến bản dựng bị gián đoạn nếu các mục tiêu được phân tích cú pháp từ biểu thức truy vấn không thể tạo được bằng các lựa chọn cấp cao nhất.
Thẻ:loading_and_analysis
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]experimental_inprocess_symlink_creation
mặc định: "true"- Có thực hiện các lệnh gọi trực tiếp đến hệ thống tệp để tạo cây liên kết tượng trưng hay không thay vì uỷ quyền cho một quy trình trợ giúp.
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_persistent_aar_extractor
mặc định: "false"-
Bật trình trích xuất aar liên tục bằng cách sử dụng các worker.
Thẻ:execution
,experimental
--[no]experimental_remotable_source_manifests
mặc định: "false"-
Có nên thực hiện các thao tác trên tệp kê khai nguồn từ xa hay không
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_split_coverage_postprocessing
mặc định: "false"-
Nếu đúng, Bazel sẽ chạy quy trình xử lý hậu kỳ về mức độ phù hợp cho kiểm thử trong một quy trình tạo mới.
Thẻ:execution
,experimental
--[no]experimental_strict_fileset_output
mặc định: "false"-
Nếu bạn bật lựa chọn này, thì các nhóm tệp sẽ coi tất cả các cấu phần phần mềm đầu ra là tệp thông thường. Chúng sẽ không đi qua các thư mục hoặc nhạy cảm với các đường liên kết tượng trưng.
Thẻ:execution
,experimental
--[no]incompatible_modify_execution_info_additive
mặc định: "false"-
Khi được bật, việc truyền nhiều cờ --modify_execution_info sẽ có tính cộng dồn. Khi bị vô hiệu hoá, hệ thống chỉ xem xét cờ cuối cùng.
Thẻ:execution
,affects_outputs
,loading_and_analysis
,incompatible_change
--modify_execution_info=<regex=[+-]key,regex=[+-]key,...>
nhiều mục đích sử dụng được tích luỹ-
Thêm hoặc xoá các khoá khỏi thông tin thực thi của một thao tác dựa trên từ viết tắt của thao tác. Chỉ áp dụng cho những thao tác hỗ trợ thông tin thực thi. Nhiều thao tác phổ biến hỗ trợ thông tin thực thi, ví dụ: Genrule, CppCompile, Javac, StarlarkAction, TestRunner. Khi chỉ định nhiều giá trị, thứ tự sẽ quan trọng vì nhiều biểu thức chính quy có thể áp dụng cho cùng một mã nhớ.
Cú pháp: "regex=[+-]key,regex=[+-]key,...".
Ví dụ: ".*=+x,.*=-y,.*=+z" sẽ thêm "x" và "z" vào, đồng thời xoá "y" khỏi thông tin thực thi cho tất cả các thao tác.
"Genrule=+requires-x" sẽ thêm "requires-x" vào thông tin thực thi cho tất cả các thao tác Genrule.
"(?!Genrule).*=-requires-x" sẽ xoá "requires-x" khỏi thông tin thực thi cho tất cả các thao tác không phải Genrule.
Thẻ:execution
,affects_outputs
,loading_and_analysis
--persistent_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_android_dex_desugar
--strategy=Desugar=worker
--strategy=DexBuilder=worker
Thẻ:host_machine_resource_optimizations
,execution
--persistent_android_resource_processor
-
Bật trình xử lý tài nguyên Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_busybox_tools
--strategy=AaptPackage=worker
--strategy=AndroidResourceParser=worker
--strategy=AndroidResourceValidator=worker
--strategy=AndroidResourceCompiler=worker
--strategy=RClassGenerator=worker
--strategy=AndroidResourceLink=worker
--strategy=AndroidAapt2=worker
--strategy=AndroidAssetMerger=worker
--strategy=AndroidResourceMerger=worker
--strategy=AndroidCompiledResourceMerger=worker
--strategy=ManifestMerger=worker
--strategy=AndroidManifestMerger=worker
--strategy=Aapt2Optimize=worker
--strategy=AARGenerator=worker
--strategy=ProcessDatabinding=worker
--strategy=GenerateDataBindingBaseClasses=worker
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_dex_desugar
--internal_persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_resource_processor
-
Bật trình xử lý tài nguyên Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_resource_processor
--modify_execution_info=AaptPackage=+supports-multiplex-workers
--modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
--modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
--modify_execution_info=RClassGenerator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
--modify_execution_info=AndroidAapt2=+supports-multiplex-workers
--modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
--modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
--modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
--modify_execution_info=ManifestMerger=+supports-multiplex-workers
--modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
--modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
--modify_execution_info=AARGenerator=+supports-multiplex-workers
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_tools
-
Bật các công cụ Android liên tục và được ghép kênh (dexing, desugaring, xử lý tài nguyên).
Mở rộng thành:
--internal_persistent_multiplex_busybox_tools
--persistent_multiplex_android_resource_processor
--persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--[no]use_target_platform_for_tests
mặc định: "false"-
Nếu đúng, Bazel sẽ sử dụng nền tảng mục tiêu để chạy các kiểm thử thay vì nhóm thực thi kiểm thử.
Thẻ:execution
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--android_compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch mục tiêu Android.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_manifest_merger=<legacy, android or force_android>
mặc định: "android"-
Chọn công cụ sáp nhập tệp kê khai để dùng cho các quy tắc android_binary. Cờ giúp chuyển đổi sang công cụ sáp nhập tệp kê khai Android từ công cụ sáp nhập cũ.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_platforms=<a build target label>
mặc định: ""-
Đặt các nền tảng mà mục tiêu android_binary sử dụng. Nếu bạn chỉ định nhiều nền tảng, thì tệp nhị phân sẽ là một APK lớn, chứa các tệp nhị phân gốc cho từng nền tảng mục tiêu được chỉ định.
Thẻ:changes_inputs
,loading_and_analysis
,loses_incremental_state
--apple_crosstool_top=<a build target label>
default: "@bazel_tools//tools/cpp:toolchain"-
Nhãn của gói crosstool sẽ được dùng trong các quy tắc Apple và Objc cũng như các phần phụ thuộc của chúng.
Thẻ:loses_incremental_state
,changes_inputs
--cc_output_directory_tag=<a string>
mặc định: ""-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:affects_outputs
--compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch C++ cần dùng để biên dịch mục tiêu.
Thẻ:loading_and_analysis
,execution
--coverage_output_generator=<a build target label>
default: "@bazel_tools//tools/test:lcov_merger"-
Vị trí của tệp nhị phân dùng để xử lý hậu kỳ các báo cáo phạm vi thô. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Giá trị mặc định là "//tools/test:lcov_merger".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_report_generator=<a build target label>
default: "@bazel_tools//tools/test:coverage_report_generator"-
Vị trí của tệp nhị phân dùng để tạo báo cáo về mức độ phù hợp. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Mặc định là "//tools/test:coverage_report_generator".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_support=<a build target label>
default: "@bazel_tools//tools/test:coverage_support"-
Vị trí của các tệp hỗ trợ bắt buộc trên đầu vào của mọi thao tác kiểm thử thu thập mức độ phù hợp của mã. Giá trị mặc định là "//tools/test:coverage_support".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--custom_malloc=<a build target label>
mặc định: xem nội dung mô tả-
Chỉ định một cách triển khai malloc tuỳ chỉnh. Chế độ cài đặt này sẽ ghi đè các thuộc tính malloc trong quy tắc bản dựng.
Thẻ:changes_inputs
,affects_outputs
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các biểu thức chính quy được phân tách bằng dấu phẩy, mỗi biểu thức có thể có tiền tố là dấu "-" (biểu thức phủ định), được chỉ định (=) cho danh sách các mục tiêu giá trị ràng buộc được phân tách bằng dấu phẩy. Nếu một mục tiêu không khớp với biểu thức phủ định nào và khớp với ít nhất một biểu thức khẳng định, thì quá trình phân giải chuỗi công cụ của mục tiêu đó sẽ được thực hiện như thể mục tiêu đó đã khai báo các giá trị ràng buộc dưới dạng các ràng buộc thực thi. Ví dụ: //demo,-test=@platforms//cpus:x86_64 sẽ thêm "x86_64" vào mọi mục tiêu trong //demo, ngoại trừ những mục tiêu có tên chứa "test".
Thẻ:loading_and_analysis
--[no]experimental_include_xcode_execution_requirements
mặc định: "false"-
Nếu được đặt, hãy thêm yêu cầu thực thi "requires-xcode:{version}" vào mọi thao tác Xcode. Nếu phiên bản Xcode có nhãn được phân tách bằng dấu gạch ngang, hãy thêm yêu cầu thực thi "requires-xcode-label:{version_label}".
Thẻ:loses_incremental_state
,loading_and_analysis
,execution
,experimental
--[no]experimental_prefer_mutual_xcode
mặc định: "true"-
Nếu đúng, hãy sử dụng Xcode gần đây nhất có sẵn trên cả thiết bị cục bộ và từ xa. Nếu là false hoặc nếu không có phiên bản nào tương thích, hãy sử dụng phiên bản Xcode cục bộ được chọn thông qua xcode-select.
Thẻ:loses_incremental_state
,experimental
--extra_execution_platforms=<comma-separated list of options>
mặc định: ""-
Các nền tảng có sẵn dưới dạng nền tảng thực thi để chạy các thao tác. Bạn có thể chỉ định nền tảng theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các nền tảng này sẽ được cân nhắc trước những nền tảng được khai báo trong tệp WORKSPACE bằng register_execution_platforms(). Bạn chỉ có thể đặt lựa chọn này một lần; các phiên bản sau sẽ ghi đè các chế độ cài đặt cờ trước đó.
Thẻ:execution
--extra_toolchains=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các quy tắc chuỗi công cụ cần được xem xét trong quá trình phân giải chuỗi công cụ. Bạn có thể chỉ định chuỗi công cụ theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các chuỗi công cụ này sẽ được xem xét trước những chuỗi công cụ được khai báo trong tệp WORKSPACE bằng register_toolchains().
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--grte_top=<a label>
mặc định: xem nội dung mô tả-
Nhãn cho một thư viện libc đã đăng ký. Giá trị mặc định được chọn theo chuỗi công cụ crosstool và bạn hầu như không bao giờ cần ghi đè giá trị này.
Thẻ:action_command_lines
,affects_outputs
--host_compiler=<a string>
mặc định: xem nội dung mô tả-
Cờ không hoạt động. Sẽ bị xoá trong một bản phát hành sau này.
Thẻ:loading_and_analysis
,execution
--host_grte_top=<a label>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, chế độ cài đặt này sẽ ghi đè thư mục cấp cao nhất libc (--grte_top) cho cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_platform=<a build target label>
mặc định: "@bazel_tools//tools:host_platform"-
Nhãn của một quy tắc nền tảng mô tả hệ thống máy chủ.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--[no]incompatible_bazel_test_exec_run_under
mặc định: "false"-
Nếu được bật, "bazel test --run_under=//:runner" sẽ tạo "//:runner" trong cấu hình exec. Nếu bị tắt, thao tác này sẽ tạo "//:runner" trong cấu hình đích. Bazel thực thi các kiểm thử trên các máy thực thi, vì vậy, phương án đầu tiên chính xác hơn. Điều này không ảnh hưởng đến "bazel run", luôn tạo "`--run_under=//foo" trong cấu hình mục tiêu.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features
mặc định: "true"-
Nếu đúng, Bazel sẽ không bật các tính năng "host" và "nonhost" trong chuỗi công cụ c++ (xem https://github.com/bazelbuild/bazel/issues/7407 để biết thêm thông tin).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enable_apple_toolchain_resolution
mặc định: "false"-
Sử dụng độ phân giải chuỗi công cụ để chọn Apple SDK cho các quy tắc của Apple (Starlark và gốc)
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_remove_legacy_whole_archive
mặc định: "true"-
Nếu đúng, theo mặc định, Bazel sẽ không liên kết các phần phụ thuộc của thư viện dưới dạng toàn bộ kho lưu trữ (xem https://github.com/bazelbuild/bazel/issues/7362 để biết hướng dẫn di chuyển).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_strip_executable_safely
mặc định: "false"-
Nếu đúng, thao tác xoá cho các tệp thực thi sẽ sử dụng cờ -x. Cờ này không làm gián đoạn quá trình phân giải biểu tượng động.
Thẻ:action_command_lines
,incompatible_change
-
Sử dụng các đối tượng dùng chung của giao diện nếu được chuỗi công cụ hỗ trợ. Tất cả các chuỗi công cụ ELF hiện đều hỗ trợ chế độ cài đặt này.
Thẻ:loading_and_analysis
,affects_outputs
,affects_outputs
--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của iOS SDK cần dùng để tạo ứng dụng iOS. Nếu không được chỉ định, sẽ sử dụng phiên bản iOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của SDK macOS cần dùng để tạo các ứng dụng macOS. Nếu không được chỉ định, sẽ sử dụng phiên bản SDK macOS mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--minimum_os_version=<a string>
mặc định: xem nội dung mô tả-
Phiên bản hệ điều hành tối thiểu mà mục tiêu biên dịch của bạn hướng đến.
Thẻ:loading_and_analysis
,affects_outputs
--platform_mappings=<a main workspace-relative path>
mặc định: ""-
Vị trí của một tệp ánh xạ mô tả nền tảng cần sử dụng nếu không có nền tảng nào được đặt hoặc cờ cần đặt khi đã có nền tảng. Phải tương ứng với thư mục gốc của không gian làm việc chính. Mặc định là "platform_mappings" (một tệp ngay bên dưới thư mục gốc của không gian làm việc).
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
,immutable
--platforms=<a build target label>
mặc định: ""-
Nhãn của các quy tắc nền tảng mô tả nền tảng mục tiêu cho lệnh hiện tại.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--python_path=<a string>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối của trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--python_top=<a build target label>
mặc định: xem nội dung mô tả-
Nhãn của py_runtime đại diện cho trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản SDK tvOS cần dùng để tạo ứng dụng tvOS. Nếu không được chỉ định, sẽ sử dụng phiên bản tvOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của watchOS SDK cần dùng để tạo ứng dụng watchOS. Nếu không được chỉ định, hãy sử dụng phiên bản watchOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--xcode_version=<a string>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, hãy sử dụng Xcode của phiên bản đã cho cho các thao tác xây dựng có liên quan. Nếu không chỉ định, hãy sử dụng phiên bản mặc định của trình thực thi Xcode.
Thẻ:loses_incremental_state
--xcode_version_config=<a build target label>
mặc định: "@bazel_tools//tools/cpp:host_xcodes"-
Nhãn của quy tắc xcode_config sẽ được dùng để chọn phiên bản Xcode trong cấu hình bản dựng.
Thẻ:loses_incremental_state
,loading_and_analysis
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]apple_generate_dsym
mặc định: "false"-
Có tạo (các) tệp biểu tượng gỡ lỗi (.dSYM) hay không.
Thẻ:affects_outputs
,action_command_lines
--[no]build_runfile_links
mặc định: "true"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfile cho tất cả các mục tiêu. Nếu là false, chỉ ghi các tệp này khi cần thiết theo lệnh chạy, kiểm thử hoặc thao tác cục bộ.
Thẻ:affects_outputs
--[no]build_runfile_manifests
mặc định: "true"-
Nếu đúng, hãy ghi tệp kê khai runfile cho tất cả các mục tiêu. Nếu là false, hãy bỏ qua các giá trị này. Các kiểm thử cục bộ sẽ không chạy được khi có giá trị false.
Thẻ:affects_outputs
--[no]build_test_dwp
mặc định: "false"-
Nếu được bật, khi tạo các bài kiểm thử C++ một cách tĩnh và bằng cách phân hạch, tệp .dwp cho tệp nhị phân kiểm thử cũng sẽ được tạo tự động.
Thẻ:loading_and_analysis
,affects_outputs
--cc_proto_library_header_suffixes=<comma-separated set of options>
mặc định: ".pb.h"-
Đặt hậu tố của các tệp tiêu đề mà cc_proto_library tạo.
Thẻ:affects_outputs
,loading_and_analysis
--cc_proto_library_source_suffixes=<comma-separated set of options>
mặc định: ".pb.cc"-
Đặt hậu tố của các tệp nguồn mà cc_proto_library tạo ra.
Thẻ:affects_outputs
,loading_and_analysis
--[no]experimental_proto_descriptor_sets_include_source_info
mặc định: "false"-
Chạy các thao tác bổ sung cho các phiên bản API Java thay thế trong proto_library.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_save_feature_state
mặc định: "false"-
Lưu trạng thái của các tính năng đã bật và được yêu cầu dưới dạng đầu ra của quá trình biên dịch.
Thẻ:affects_outputs
,experimental
--fission=<a set of compilation modes>
mặc định: "no"-
Chỉ định chế độ biên dịch nào sử dụng phân hạch cho các hoạt động biên dịch và liên kết C++. Có thể là bất kỳ tổ hợp nào của {'fastbuild', 'dbg', 'opt'} hoặc các giá trị đặc biệt "yes" để bật tất cả các chế độ và "no" để tắt tất cả các chế độ.
Thẻ:loading_and_analysis
,action_command_lines
,affects_outputs
--[no]incompatible_always_include_files_in_data
mặc định: "true"-
Nếu đúng, các quy tắc gốc sẽ thêm <code>DefaultInfo.files</code> của các phần phụ thuộc dữ liệu vào runfiles, khớp với hành vi được đề xuất cho các quy tắc Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid).
Thẻ:affects_outputs
,incompatible_change
--[no]legacy_external_runfiles
mặc định: "false"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfiles cho các kho lưu trữ bên ngoài trong .runfiles/wsname/external/repo (ngoài .runfiles/repo).
Thẻ:affects_outputs
--[no]objc_generate_linkmap
mặc định: "false"-
Chỉ định xem có tạo tệp linkmap hay không.
Thẻ:affects_outputs
--[no]save_temps
mặc định: "false"-
Nếu được đặt, các kết quả tạm thời từ gcc sẽ được lưu. Các tệp này bao gồm tệp .s (mã hợp ngữ), tệp .i (C đã xử lý trước) và tệp .ii (C++ đã xử lý trước).
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, thay vì sự tồn tại của đầu ra:
--action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--allowed_cpu_values=<comma-separated set of options>
mặc định: ""-
Các giá trị được phép cho cờ --cpu.
Thẻ:changes_inputs
,affects_outputs
--[no]android_databinding_use_androidx
mặc định: "true"-
Tạo các tệp liên kết dữ liệu tương thích với AndroidX. Chỉ dùng với tính năng liên kết dữ liệu phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]android_databinding_use_v3_4_args
mặc định: "true"-
Sử dụng android databinding phiên bản 2 với đối số 3.4.0. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--android_dynamic_mode=<off, default or fully>
mặc định: "tắt"-
Xác định xem các phần phụ thuộc C++ của các quy tắc Android sẽ được liên kết một cách linh động khi cc_binary không tạo rõ ràng một thư viện dùng chung hay không. "default" có nghĩa là bazel sẽ chọn có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:affects_outputs
,loading_and_analysis
--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency>
mặc định: "theo bảng chữ cái"-
Đặt thứ tự của các tệp kê khai được truyền đến trình sáp nhập tệp kê khai cho các tệp nhị phân Android. ALPHABETICAL nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với execroot. ALPHABETICAL_BY_CONFIGURATION có nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với thư mục cấu hình trong thư mục đầu ra. DEPENDENCY có nghĩa là các tệp kê khai được sắp xếp theo thứ tự, trong đó tệp kê khai của mỗi thư viện sẽ xuất hiện trước tệp kê khai của các phần phụ thuộc.
Thẻ:action_command_lines
,execution
--[no]android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
--[no]build_python_zip
mặc định: "auto"-
Tạo tệp zip thực thi Python; bật trên Windows, tắt trên các nền tảng khác
Thẻ:affects_outputs
--catalyst_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple Catalyst.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]collect_code_coverage
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ đo lường mã (sử dụng tính năng đo lường ngoại tuyến nếu có thể) và sẽ thu thập thông tin về mức độ phù hợp trong quá trình kiểm thử. Chỉ những mục tiêu khớp với --instrumentation_filter mới bị ảnh hưởng. Thông thường, bạn không nên chỉ định trực tiếp lựa chọn này mà nên dùng lệnh "bazel coverage".
Thẻ:affects_outputs
--compilation_mode=<fastbuild, dbg or opt>
[-c
] mặc định: "fastbuild"-
Chỉ định chế độ mà tệp nhị phân sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn C.
Thẻ:action_command_lines
,affects_outputs
--copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc.
Thẻ:action_command_lines
,affects_outputs
--cpu=<a string>
mặc định: ""-
CPU mục tiêu.
Thẻ:changes_inputs
,affects_outputs
--cs_fdo_absolute_path=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ CSFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên đường dẫn tuyệt đối của tệp zip chứa tệp hồ sơ, tệp hồ sơ LLVM thô hoặc được lập chỉ mục.
Thẻ:affects_outputs
--cs_fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo các tệp nhị phân bằng tính năng đo lường FDO theo ngữ cảnh. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--cs_fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
cs_fdo_profile đại diện cho hồ sơ theo ngữ cảnh sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch các tệp nguồn C++.
Thẻ:action_command_lines
,affects_outputs
--define=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lựa chọn --define chỉ định một phép gán cho biến bản dựng. Trong trường hợp có nhiều giá trị cho một biến, giá trị cuối cùng sẽ được dùng.
Thẻ:changes_inputs
,affects_outputs
--dynamic_mode=<off, default or fully>
mặc định: "default"-
Xác định xem các tệp nhị phân C++ sẽ được liên kết một cách linh động hay không. "default" có nghĩa là Bazel sẽ chọn xem có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:loading_and_analysis
,affects_outputs
--[no]enable_propeller_optimize_absolute_paths
mặc định: "true"-
Nếu được đặt, mọi việc sử dụng đường dẫn tuyệt đối để tối ưu hoá cánh quạt sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_remaining_fdo_absolute_paths
mặc định: "true"-
Nếu bạn đặt chính sách này, mọi việc sử dụng đường dẫn tuyệt đối cho FDO sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_runfiles
mặc định: "auto"-
Bật cây liên kết tượng trưng runfiles; Theo mặc định, chế độ này sẽ tắt trên Windows và bật trên các nền tảng khác.
Thẻ:affects_outputs
--experimental_action_listener=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Ngừng sử dụng và thay bằng các khía cạnh. Sử dụng action_listener để đính kèm extra_action vào các thao tác xây dựng hiện có.
Thẻ:execution
,experimental
--[no]experimental_android_compress_java_resources
mặc định: "false"-
Nén tài nguyên Java trong APK
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_databinding_v2
mặc định: "true"-
Sử dụng tính năng liên kết dữ liệu Android phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_rewrite_dexes_with_rex
mặc định: "false"-
sử dụng công cụ rex để viết lại các tệp dex
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_collect_code_coverage_for_generated_files
mặc định: "false"-
Nếu được chỉ định, Bazel cũng sẽ tạo thông tin thu thập mức độ phù hợp cho các tệp đã tạo.
Thẻ:affects_outputs
,experimental
--experimental_objc_fastbuild_options=<comma-separated list of options>
mặc định: "-O0,-DDEBUG=1"-
Sử dụng các chuỗi này làm lựa chọn trình biên dịch fastbuild objc.
Thẻ:action_command_lines
--[no]experimental_omitfp
mặc định: "false"-
Nếu đúng, hãy dùng libunwind để huỷ ngăn xếp và biên dịch bằng -fomit-frame-pointer và -fasynchronous-unwind-tables.
Thẻ:action_command_lines
,affects_outputs
,experimental
--experimental_output_paths=<off, content or strip>
mặc định: "tắt"-
Nên dùng mô hình nào để quy tắc ghi đầu ra ở đâu trong cây đầu ra, đặc biệt là đối với các bản dựng đa nền tảng / đa cấu hình. Đây là một tính năng thử nghiệm. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/6526 để biết thông tin chi tiết. Các thao tác Starlark có thể chọn tham gia vào việc liên kết đường dẫn bằng cách thêm khoá "supports-path-mapping" vào từ điển "execution_requirements".
Thẻ:loses_incremental_state
,bazel_internal_configuration
,affects_outputs
,execution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi mục nhập phải có dạng label=value, trong đó label đề cập đến một nền tảng và values là tên viết tắt mong muốn dùng trong đường dẫn đầu ra. Chỉ được dùng khi --experimental_platform_in_output_dir là true. Có mức độ ưu tiên đặt tên cao nhất.
Thẻ:affects_outputs
,experimental
--[no]experimental_platform_in_output_dir
mặc định: "false"-
Nếu đúng, tên viết tắt của nền tảng mục tiêu sẽ được dùng trong tên thư mục đầu ra thay vì CPU. Lược đồ chính xác là thử nghiệm và có thể thay đổi: Trước tiên, trong trường hợp hiếm gặp khi lựa chọn --platforms không có chính xác một giá trị, thì hàm băm của lựa chọn platforms sẽ được sử dụng. Tiếp theo, nếu có tên ngắn nào cho nền tảng hiện tại được đăng ký bằng --experimental_override_name_platform_in_output_dir, thì tên ngắn đó sẽ được dùng. Sau đó, nếu bạn đặt --experimental_use_platforms_in_output_dir_legacy_heuristic, hãy dùng tên ngắn dựa trên Nhãn nền tảng hiện tại. Cuối cùng, hàm băm của lựa chọn nền tảng sẽ được dùng làm phương án cuối cùng.
Thẻ:affects_outputs
,experimental
--[no]experimental_py_binaries_include_label
mặc định: "false"-
Các mục tiêu py_binary bao gồm cả nhãn của chúng ngay cả khi tính năng đóng dấu bị tắt.
Thẻ:affects_outputs
,experimental
--[no]experimental_use_llvm_covmap
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ tạo thông tin về bản đồ mức độ phù hợp llvm-cov thay vì gcov khi collect_code_coverage được bật.
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_use_platforms_in_output_dir_legacy_heuristic
mặc định: "true"-
Vui lòng chỉ sử dụng cờ này trong quá trình di chuyển hoặc thử nghiệm theo đề xuất. Xin lưu ý rằng phương pháp phỏng đoán này có những điểm thiếu sót đã biết và bạn nên di chuyển để chỉ dựa vào --experimental_override_name_platform_in_output_dir.
Thẻ:affects_outputs
,experimental
--fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo tệp nhị phân bằng tính năng đo lường FDO. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--fdo_optimize=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ FDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của một tệp zip chứa cây tệp .gcda, một tệp afdo chứa hồ sơ tự động hoặc một tệp hồ sơ LLVM. Cờ này cũng chấp nhận các tệp được chỉ định dưới dạng nhãn (ví dụ: `//foo/bar:file.afdo` – bạn có thể cần thêm chỉ thị `exports_files` vào gói tương ứng) và các nhãn trỏ đến mục tiêu `fdo_profile`. Cờ này sẽ được thay thế bằng quy tắc "fdo_profile".
Thẻ:affects_outputs
--fdo_prefetch_hints=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng gợi ý tìm nạp trước bộ nhớ đệm.
Thẻ:affects_outputs
--fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
fdo_profile đại diện cho hồ sơ sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt cho các mục tiêu được tạo trong cấu hình mục tiêu. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực. Xem thêm --host_features
Các thẻ:changes_inputs
,affects_outputs
--[no]force_pic
mặc định: "false"-
Nếu được bật, tất cả các bản biên dịch C++ sẽ tạo ra mã độc lập với vị trí ("-fPIC"), các đường liên kết ưu tiên các thư viện được tạo sẵn PIC hơn các thư viện không phải PIC và các đường liên kết tạo ra các tệp thực thi độc lập với vị trí ("-pie").
Thẻ:loading_and_analysis
,affects_outputs
--host_action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình thực thi. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt>
mặc định: "opt"-
Chỉ định chế độ mà các công cụ được dùng trong quá trình tạo sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--host_conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình biên dịch C khi biên dịch các tệp nguồn C (nhưng không phải C++) trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_cpu=<a string>
mặc định: ""-
CPU lưu trữ.
Thẻ:changes_inputs
,affects_outputs
--host_cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C++ cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt đối với các mục tiêu được tạo trong cấu hình thực thi. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực.
Thẻ:changes_inputs
,affects_outputs
--host_force_python=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Ghi đè phiên bản Python cho cấu hình exec. Có thể là "PY2" hoặc "PY3".
Thẻ:loading_and_analysis
,affects_outputs
--host_linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình liên kết khi liên kết các công cụ trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu lưu trữ. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc truyền đến trình biên dịch C/C++ khi biên dịch một số tệp trong cấu hình thực thi. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--[no]incompatible_auto_exec_groups
mặc định: "false"-
Khi được bật, một nhóm thực thi sẽ tự động được tạo cho mỗi chuỗi công cụ mà một quy tắc sử dụng. Để quy tắc này hoạt động, bạn cần chỉ định tham số "toolchain" cho các thao tác của quy tắc. Để biết thêm thông tin, hãy xem https://github.com/bazelbuild/bazel/issues/17134.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_merge_genfiles_directory
mặc định: "true"-
Nếu đúng, thư mục genfiles sẽ được gộp vào thư mục bin.
Thẻ:affects_outputs
,incompatible_change
--[no]instrument_test_targets
mặc định: "false"-
Khi bật tính năng đo lường mức độ phù hợp, hãy chỉ định xem có nên cân nhắc việc đo lường các quy tắc kiểm thử hay không. Khi được đặt, các quy tắc kiểm thử do --instrumentation_filter bao gồm sẽ được đo lường. Nếu không, các quy tắc kiểm thử sẽ luôn bị loại trừ khỏi hoạt động đo lường mức độ sử dụng.
Thẻ:affects_outputs
--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
default: "-/javatests[/:],-/test/java[/:]"-
Khi tính năng đo lường mức độ phù hợp được bật, chỉ những quy tắc có tên được đưa vào bộ lọc dựa trên biểu thức chính quy đã chỉ định mới được đo lường. Thay vào đó, các quy tắc có tiền tố "-" sẽ bị loại trừ. Xin lưu ý rằng chỉ các quy tắc không phải quy tắc kiểm thử mới được đo lường, trừ phi bạn bật --instrument_test_targets.
Thẻ:affects_outputs
--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS tối thiểu tương thích với các trình mô phỏng và thiết bị mục tiêu. Nếu không chỉ định, hãy sử dụng "ios_sdk_version".
Thẻ:loses_incremental_state
--ios_multi_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo ios_application. Kết quả là một tệp nhị phân phổ quát chứa tất cả các cấu trúc được chỉ định.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]legacy_whole_archive
mặc định: "true"-
Không được dùng nữa, được thay thế bằng --incompatible_remove_legacy_whole_archive (xem https://github.com/bazelbuild/bazel/issues/7362 để biết thông tin chi tiết). Khi bật, hãy sử dụng --whole-archive cho các quy tắc cc_binary có linkshared=True và linkstatic=True hoặc "-static" trong linkopts. Điều này chỉ nhằm mục đích tương thích ngược. Một lựa chọn thay thế tốt hơn là sử dụng alwayslink=1 khi cần.
Thẻ:action_command_lines
,affects_outputs
,deprecated
--linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi liên kết.
Thẻ:action_command_lines
,affects_outputs
--ltobackendopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước phụ trợ LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--ltoindexopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước lập chỉ mục LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--macos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple macOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--memprof_profile=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng hồ sơ memprof.
Thẻ:affects_outputs
--[no]objc_debug_with_GLIBCXX
mặc định: "false"-
Nếu được đặt và chế độ biên dịch được đặt thành "dbg", hãy xác định GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC và GLIBCPP_CONCEPT_CHECKS.
Thẻ:action_command_lines
--[no]objc_enable_binary_stripping
mặc định: "false"-
Có thực hiện việc xoá ký hiệu và mã không dùng đến trên các tệp nhị phân được liên kết hay không. Thao tác xoá nhị phân sẽ được thực hiện nếu bạn chỉ định cả cờ này và --compilation_mode=opt.
Thẻ:action_command_lines
--objccopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn Objective-C/C++.
Thẻ:action_command_lines
--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền có chọn lọc đến gcc khi biên dịch một số tệp. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc chuyển đến phần phụ trợ LTO (trong --features=thin_lto) khi biên dịch một số đối tượng phụ trợ nhất định. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ. option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 sẽ thêm tuỳ chọn dòng lệnh -O0 vào dòng lệnh phụ trợ LTO của tất cả các tệp o trong //foo/ ngoại trừ bar.o.
Thẻ:action_command_lines
,affects_outputs
--platform_suffix=<a string>
mặc định: xem nội dung mô tả-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:loses_incremental_state
,affects_outputs
,loading_and_analysis
--propeller_optimize=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ Propeller để tối ưu hoá mục tiêu bản dựng.Hồ sơ Propeller phải bao gồm ít nhất một trong hai tệp, đó là hồ sơ cc và hồ sơ ld. Cờ này chấp nhận một nhãn bản dựng phải tham chiếu đến các tệp đầu vào hồ sơ cánh quạt. Ví dụ: tệp BUILD xác định nhãn, trong a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",)Bạn có thể phải thêm chỉ thị exports_files vào gói tương ứng để Bazel có thể nhìn thấy các tệp này. Bạn phải sử dụng lựa chọn này dưới dạng: --propeller_optimize=//a/b:propeller_profile
Thẻ:action_command_lines
,affects_outputs
--propeller_optimize_absolute_cc_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp cc_profile cho bản dựng được tối ưu hoá Propeller.
Thẻ:affects_outputs
--propeller_optimize_absolute_ld_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp ld_profile cho các bản dựng được tối ưu hoá bằng Propeller.
Thẻ:affects_outputs
--run_under=<a prefix in front of command>
mặc định: xem nội dung mô tả-
Tiền tố cần chèn trước các tệp thực thi cho lệnh "test" và "run". Nếu giá trị là "foo -bar" và dòng lệnh thực thi là "test_binary -baz", thì dòng lệnh cuối cùng là "foo -bar test_binary -baz".Đây cũng có thể là nhãn cho mục tiêu có thể thực thi. Một số ví dụ là: "valgrind", "strace", "strace -c", "valgrind --quiet --num-callers=20", "//package:target", "//package:target --options".
Thẻ:action_command_lines
-
Nếu đúng, các thư viện gốc có chức năng giống nhau sẽ được chia sẻ giữa các mục tiêu khác nhau
Thẻ:loading_and_analysis
,affects_outputs
--[no]stamp
mặc định: "false"-
Đóng dấu tệp nhị phân bằng ngày, tên người dùng, tên máy chủ, thông tin về không gian làm việc, v.v.
Thẻ:affects_outputs
--strip=<always, sometimes or never>
mặc định: "sometimes"-
Chỉ định có xoá các tệp nhị phân và thư viện dùng chung hay không (bằng cách sử dụng "-Wl,--strip-debug"). Giá trị mặc định của "sometimes" có nghĩa là chỉ xoá nếu --compilation_mode=fastbuild.
Thẻ:affects_outputs
--stripopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến strip khi tạo tệp nhị phân "<name>.stripped".
Thẻ:action_command_lines
,affects_outputs
--tvos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple tvOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản tvOS tối thiểu tương thích cho các trình mô phỏng và thiết bị mục tiêu. Nếu không được chỉ định, sẽ sử dụng "tvos_sdk_version".
Thẻ:loses_incremental_state
--visionos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple visionOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple watchOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản watchOS tối thiểu tương thích với các thiết bị và trình mô phỏng mục tiêu. Nếu bạn không chỉ định, hệ thống sẽ dùng "watchos_sdk_version".
Thẻ:loses_incremental_state
--xbinary_fdo=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ XbinaryFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của hồ sơ nhị phân chéo mặc định. Khi được dùng cùng với --fdo_instrument/--fdo_optimize/--fdo_profile, các lựa chọn đó sẽ luôn được ưu tiên như thể xbinary_fdo không bao giờ được chỉ định.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_licenses
mặc định: "false"-
Kiểm tra để đảm bảo rằng các ràng buộc về việc cấp phép do các gói phụ thuộc áp đặt không xung đột với các chế độ phân phối của những mục tiêu đang được tạo. Theo mặc định, giấy phép không được kiểm tra.
Thẻ:build_file_semantics
--[no]check_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi về khả năng hiển thị trong các phần phụ thuộc mục tiêu sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
--[no]desugar_for_android
mặc định: "true"- Có đơn giản hoá mã byte Java 8 trước khi dexing hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]desugar_java8_libs
mặc định: "false"-
Có đưa các thư viện Java 8 được hỗ trợ vào ứng dụng cho các thiết bị cũ hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]enforce_constraints
mặc định: "true"-
Kiểm tra các môi trường mà mỗi mục tiêu tương thích và báo cáo lỗi nếu có mục tiêu nào có các phần phụ thuộc không hỗ trợ cùng một môi trường
Thẻ:build_file_semantics
--[no]experimental_check_desugar_deps
mặc định: "true"-
Có nên kiểm tra kỹ việc khử đường cú pháp chính xác ở cấp nhị phân Android hay không.
Thẻ:eagerness_to_exit
,loading_and_analysis
,experimental
--experimental_import_deps_checking=<a string>
mặc định: xem nội dung mô tả-
Không có thao tác, chỉ giữ lại để đảm bảo khả năng tương thích ngược
Thẻ:loading_and_analysis
--experimental_one_version_enforcement=<off, warning or error>
mặc định: "TẮT"-
Khi được bật, hãy thực thi rằng quy tắc java_binary không được chứa nhiều phiên bản của cùng một tệp lớp trên đường dẫn lớp. Quy trình thực thi này có thể làm hỏng bản dựng hoặc chỉ dẫn đến cảnh báo.
Thẻ:loading_and_analysis
--experimental_strict_java_deps=<off, warn, error, strict or default>
mặc định: "default"-
Nếu đúng, hãy kiểm tra để đảm bảo rằng một mục tiêu Java khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng các phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]incompatible_check_testonly_for_output_files
mặc định: "false"-
Nếu được bật, hãy kiểm tra testonly đối với các mục tiêu tiên quyết là tệp đầu ra bằng cách tra cứu testonly của quy tắc tạo. Thao tác này khớp với việc kiểm tra khả năng hiển thị.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_check_visibility_for_toolchains
mặc định: "false"-
Nếu được bật, quy trình kiểm tra khả năng hiển thị cũng áp dụng cho các hoạt động triển khai chuỗi công cụ.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_native_android_rules
mặc định: "false"-
Nếu bạn bật chính sách này, thì việc sử dụng trực tiếp các quy tắc gốc của Android sẽ bị vô hiệu hoá. Vui lòng sử dụng các quy tắc Starlark Android từ https://github.com/bazelbuild/rules_android
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_disable_native_apple_binary_rule
mặc định: "false"-
Không có thao tác. Vẫn được giữ lại để tương thích ngược.
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_python_disable_py2
mặc định: "true"-
Nếu đúng, việc sử dụng chế độ cài đặt Python 2 sẽ gây ra lỗi. Trong đó có python_version=PY2, srcs_version=PY2 và srcs_version=PY2ONLY. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15684 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]one_version_enforcement_on_java_tests
mặc định: "true"-
Khi được bật và experimental_one_version_enforcement được đặt thành một giá trị không phải NONE, hãy thực thi một phiên bản trên các mục tiêu java_test. Bạn có thể tắt cờ này để cải thiện hiệu suất kiểm thử gia tăng, nhưng sẽ bỏ lỡ các trường hợp vi phạm tiềm ẩn đối với một phiên bản.
Thẻ:loading_and_analysis
--python_native_rules_allowlist=<a build target label>
mặc định: xem nội dung mô tả-
Danh sách cho phép (mục tiêu package_group) để sử dụng khi thực thi --incompatible_python_disallow_native_rules.
Thẻ:loading_and_analysis
--[no]strict_filesets
mặc định: "false"-
Nếu bạn bật lựa chọn này, các nhóm tệp vượt quá ranh giới gói sẽ được báo cáo là lỗi.
Thẻ:build_file_semantics
,eagerness_to_exit
--strict_proto_deps=<off, warn, error, strict or default>
mặc định: "error"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--strict_public_imports=<off, warn, error, strict or default>
mặc định: "tắt"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được dùng trong "import public" dưới dạng mục tiêu được xuất.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--[no]strict_system_includes
mặc định: "false"-
Nếu đúng, các tiêu đề được tìm thấy thông qua đường dẫn bao gồm hệ thống (-isystem) cũng phải được khai báo.
Thẻ:loading_and_analysis
,eagerness_to_exit
--target_environment=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Khai báo môi trường mục tiêu của bản dựng này. Phải là một tham chiếu nhãn đến quy tắc "environment". Nếu được chỉ định, tất cả các mục tiêu cấp cao nhất phải tương thích với môi trường này.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến đầu ra ký của bản dựng:
--apk_signing_method=<v1, v2, v1_v2 or v4>
mặc định: "v1_v2"-
Triển khai để sử dụng ký APK
Thẻ:action_command_lines
,affects_outputs
,loading_and_analysis
--[no]device_debug_entitlements
mặc định: "true"-
Nếu bạn đặt và chế độ biên dịch không phải là "opt", thì các ứng dụng objc sẽ bao gồm các quyền gỡ lỗi khi ký.
Thẻ:changes_inputs
--ios_signing_cert_name=<a string>
mặc định: xem nội dung mô tả-
Tên chứng chỉ dùng để ký iOS. Nếu bạn không đặt chính sách này, thì trình duyệt sẽ quay lại sử dụng hồ sơ cung cấp. Có thể là lựa chọn ưu tiên về danh tính của chuỗi khoá của chứng chỉ hoặc (chuỗi con) tên chung của chứng chỉ, theo trang hướng dẫn của codesign (SIGNING IDENTITIES).
Thẻ:action_command_lines
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_disallow_legacy_py_provider
mặc định: "true"-
Không có thao tác, sẽ sớm bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_sdk_frameworks_attributes
mặc định: "false"-
Nếu đúng, hãy không cho phép các thuộc tính sdk_frameworks và weak_sdk_frameworks trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_objc_alwayslink_by_default
mặc định: "false"-
Nếu đúng, hãy đặt giá trị mặc định thành true cho các thuộc tính alwayslink trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_python_disallow_native_rules
mặc định: "false"-
Khi đúng, sẽ xảy ra lỗi khi sử dụng các quy tắc py_* tích hợp; thay vào đó, bạn nên sử dụng các quy tắc rule_python. Hãy xem https://github.com/bazelbuild/bazel/issues/17773 để biết thêm thông tin và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]allow_analysis_failures
mặc định: "false"-
Nếu đúng, lỗi phân tích của mục tiêu quy tắc sẽ dẫn đến việc mục tiêu truyền một thực thể AnalysisFailureInfo chứa nội dung mô tả lỗi, thay vì dẫn đến lỗi bản dựng.
Thẻ:loading_and_analysis
,experimental
--analysis_testing_deps_limit=<an integer>
mặc định: "2000"-
Đặt số lượng tối đa các phần phụ thuộc bắc cầu thông qua một thuộc tính quy tắc có quá trình chuyển đổi cấu hình for_analysis_testing. Nếu vượt quá giới hạn này, bạn sẽ gặp lỗi về quy tắc.
Thẻ:loading_and_analysis
--[no]break_build_on_parallel_dex2oat_failure
mặc định: "false"-
Nếu đúng, các lỗi hành động dex2oat sẽ khiến bản dựng bị gián đoạn thay vì thực thi dex2oat trong thời gian chạy kiểm thử.
Thẻ:loading_and_analysis
,experimental
--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g. memory=10,30,60,100>
nhiều mục đích sử dụng được tích luỹ- Ghi đè số lượng tài nguyên mặc định cho các bài kiểm thử. Định dạng dự kiến là <resource>=<value>. Nếu một số dương duy nhất được chỉ định làm <value>, thì số đó sẽ ghi đè các tài nguyên mặc định cho tất cả các kích thước kiểm thử. Nếu bạn chỉ định 4 số được phân tách bằng dấu phẩy, thì các số này sẽ ghi đè số lượng tài nguyên cho các kích thước kiểm thử nhỏ, trung bình, lớn và rất lớn tương ứng. Các giá trị cũng có thể là HOST_RAM/HOST_CPU, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4). Các tài nguyên kiểm thử mặc định do cờ này chỉ định sẽ bị ghi đè bởi các tài nguyên rõ ràng được chỉ định trong thẻ.
--[no]experimental_android_use_parallel_dex2oat
mặc định: "false"-
Sử dụng dex2oat song song để có thể tăng tốc android_test.
Thẻ:loading_and_analysis
,host_machine_resource_optimizations
,experimental
--[no]ios_memleaks
mặc định: "false"-
Bật tính năng kiểm tra rò rỉ bộ nhớ trong các mục tiêu ios_test.
Thẻ:action_command_lines
--ios_simulator_device=<a string>
mặc định: xem nội dung mô tả-
Thiết bị cần mô phỏng khi chạy một ứng dụng iOS trong trình mô phỏng, ví dụ: "iPhone 6". Bạn có thể lấy danh sách thiết bị bằng cách chạy "xcrun simctl list devicetypes" trên máy mà trình mô phỏng sẽ chạy.
Thẻ:test_runner
--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS sẽ chạy trên trình mô phỏng khi chạy hoặc kiểm thử. Quy tắc này sẽ bị bỏ qua đối với các quy tắc ios_test nếu bạn chỉ định một thiết bị mục tiêu trong quy tắc.
Thẻ:test_runner
--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ- Chỉ định số lần chạy mỗi bài kiểm thử. Nếu bất kỳ lần thử nào trong số đó không thành công vì bất kỳ lý do nào, thì toàn bộ quy trình kiểm thử sẽ được coi là không thành công. Thông thường, giá trị bạn chỉ định chỉ là một số nguyên. Ví dụ: --runs_per_test=3 sẽ chạy tất cả các kiểm thử 3 lần. Cú pháp thay thế: regex_filter@runs_per_test. Trong đó runs_per_test là một giá trị nguyên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). Ví dụ: --runs_per_test=//foo/.*,-//foo/bar/.*@3 chạy tất cả các bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có mục nào trùng khớp, thì kiểm thử chỉ chạy một lần.
--test_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung sẽ được chèn vào môi trường trình chạy kiểm thử. Bạn có thể chỉ định các biến theo tên (trong trường hợp đó, giá trị của biến sẽ được đọc từ môi trường ứng dụng Bazel) hoặc theo cặp tên=giá trị. Bạn có thể sử dụng lựa chọn này nhiều lần để chỉ định một số biến. Chỉ được dùng bằng lệnh "bazel test".
Thẻ:test_runner
--test_timeout=<a single integer or comma-separated list of 4 integers>
mặc định: "-1"- Ghi đè các giá trị thời gian chờ kiểm thử mặc định cho thời gian chờ kiểm thử (tính bằng giây). Nếu bạn chỉ định một giá trị nguyên dương duy nhất, thì giá trị đó sẽ ghi đè tất cả danh mục. Nếu bạn chỉ định 4 số nguyên được phân tách bằng dấu phẩy, thì các số nguyên này sẽ thay thế thời gian chờ cho các khoảng thời gian ngắn, trung bình, dài và vĩnh viễn (theo thứ tự đó). Trong cả hai biểu mẫu, giá trị -1 cho biết blaze sẽ sử dụng thời gian chờ mặc định cho danh mục đó.
--[no]zip_undeclared_test_outputs
mặc định: "false"-
Nếu đúng, các đầu ra kiểm thử chưa khai báo sẽ được lưu trữ trong một tệp zip.
Thẻ:test_runner
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--[no]experimental_filter_library_jar_with_program_jar
mặc định: "false"-
Lọc ProGuard ProgramJar để xoá mọi lớp cũng có trong LibraryJar.
Thẻ:action_command_lines
,experimental
--[no]experimental_inmemory_dotd_files
mặc định: "true"-
Nếu được bật, các tệp .d C++ sẽ được truyền trực tiếp qua bộ nhớ từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_inmemory_jdeps_files
mặc định: "true"-
Nếu được bật, các tệp phần phụ thuộc (.jdeps) được tạo từ quá trình biên dịch Java sẽ được truyền qua bộ nhớ trực tiếp từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_retain_test_configuration_across_testonly
mặc định: "false"-
Khi được bật, --trim_test_configuration sẽ không cắt bớt cấu hình kiểm thử cho các quy tắc được đánh dấu testonly=1. Điều này nhằm mục đích giảm các vấn đề về xung đột hành động khi các quy tắc không phải quy tắc kiểm thử phụ thuộc vào các quy tắc cc_test. Không có hiệu lực nếu --trim_test_configuration là false.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_starlark_cc_import
mặc định: "false"-
Nếu được bật, bạn có thể sử dụng phiên bản Starlark của cc_import.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_unsupported_and_brittle_include_scanning
mặc định: "false"-
Có nên thu hẹp các đầu vào để biên dịch C/C++ bằng cách phân tích cú pháp các dòng #include từ tệp đầu vào hay không. Điều này có thể cải thiện hiệu suất và mức tăng bằng cách giảm kích thước của các cây đầu vào biên dịch. Tuy nhiên, điều này cũng có thể làm hỏng các bản dựng vì trình quét include không triển khai đầy đủ ngữ nghĩa của trình tiền xử lý C. Cụ thể, nó không hiểu các chỉ thị #include động và bỏ qua logic có điều kiện của trình tiền xử lý. Bạn tự chịu rủi ro khi sử dụng. Mọi vấn đề liên quan đến cờ hiệu này mà bạn gửi đều sẽ bị đóng.
Thẻ:loading_and_analysis
,execution
,changes_inputs
,experimental
--[no]incremental_dexing
mặc định: "true"-
Thực hiện hầu hết các thao tác dexing riêng cho từng tệp Jar.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]objc_use_dotd_pruning
mặc định: "true"-
Nếu được đặt, các tệp .d do clang phát ra sẽ được dùng để cắt bớt tập hợp các đầu vào được truyền vào quá trình biên dịch objc.
Thẻ:changes_inputs
,loading_and_analysis
--[no]process_headers_in_dependencies
mặc định: "false"-
Khi tạo một mục tiêu //a:a, hãy xử lý các tiêu đề trong tất cả các mục tiêu mà //a:a phụ thuộc vào (nếu bạn bật tính năng xử lý tiêu đề cho chuỗi công cụ).
Thẻ:execution
--[no]trim_test_configuration
mặc định: "true"-
Khi được bật, các lựa chọn liên quan đến kiểm thử sẽ bị xoá bên dưới cấp cao nhất của bản dựng. Khi cờ này đang hoạt động, các kiểm thử không thể được tạo dưới dạng các phần phụ thuộc của các quy tắc không phải kiểm thử, nhưng các thay đổi đối với các lựa chọn liên quan đến kiểm thử sẽ không khiến các quy tắc không phải kiểm thử được phân tích lại.
Thẻ:loading_and_analysis
,loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: "-.*"-
In thông tin gỡ lỗi trong quá trình phân giải chuỗi công cụ. Cờ này lấy một biểu thức chính quy, được kiểm tra dựa trên các loại chuỗi công cụ và mục tiêu cụ thể để xem mục tiêu nào cần gỡ lỗi. Bạn có thể phân tách nhiều biểu thức chính quy bằng dấu phẩy, sau đó mỗi biểu thức chính quy sẽ được kiểm tra riêng. Lưu ý: Đầu ra của cờ này rất phức tạp và có thể chỉ hữu ích cho các chuyên gia về độ phân giải chuỗi công cụ.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--flag_alias=<a 'name=value' flag alias>
nhiều mục đích sử dụng được tích luỹ-
Đặt tên viết tắt cho cờ Starlark. Hàm này nhận một cặp khoá-giá trị duy nhất dưới dạng "<key>=<value>" làm đối số.
Thẻ:changes_inputs
--[no]incompatible_default_to_explicit_init_py
mặc định: "false"-
Cờ này thay đổi hành vi mặc định để các tệp __init__.py không còn được tự động tạo trong runfiles của các mục tiêu Python nữa. Cụ thể, khi mục tiêu py_binary hoặc py_test có legacy_create_init được đặt thành "auto" (mặc định), thì mục tiêu đó sẽ được coi là false chỉ khi cờ này được đặt. Xem https://github.com/bazelbuild/bazel/issues/10076.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py2_outputs_are_suffixed
mặc định: "true"-
Nếu đúng, các mục tiêu được tạo trong cấu hình Python 2 sẽ xuất hiện trong một thư mục gốc đầu ra có hậu tố "-py2", trong khi các mục tiêu được tạo cho Python 3 sẽ xuất hiện trong một thư mục gốc không có hậu tố liên quan đến Python. Điều này có nghĩa là symlink tiện lợi `bazel-bin` sẽ trỏ đến các mục tiêu Python 3 thay vì Python 2. Nếu bật lựa chọn này, bạn cũng nên bật `--incompatible_py3_is_default`.
Các thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py3_is_default
mặc định: "true"-
Nếu đúng, các mục tiêu "py_binary" và "py_test" không đặt thuộc tính "python_version" (hoặc "default_python_version") sẽ mặc định là PY3 thay vì PY2. Nếu bạn đặt cờ này, bạn cũng nên đặt `--incompatible_py2_outputs_are_suffixed`.
Các thẻ:loading_and_analysis
,affects_outputs
,incompatible_change
--[no]incompatible_use_python_toolchains
mặc định: "true"-
Nếu bạn đặt thành true, các quy tắc Python gốc có thể thực thi sẽ sử dụng thời gian chạy Python do chuỗi công cụ Python chỉ định, thay vì thời gian chạy do các cờ cũ như --python_top cung cấp.
Thẻ:loading_and_analysis
,incompatible_change
--python_version=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Chế độ phiên bản chính của Python, có thể là "PY2" hoặc "PY3". Xin lưu ý rằng chế độ này sẽ bị ghi đè bởi các mục tiêu "py_binary" và "py_test" (ngay cả khi các mục tiêu đó không chỉ định rõ phiên bản) nên thường không có nhiều lý do để cung cấp cờ này.
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]cache_test_results
[-t
] mặc định: "auto"- Nếu được đặt thành "auto", Bazel sẽ chạy lại một kiểm thử nếu và chỉ nếu: (1) Bazel phát hiện thấy các thay đổi trong kiểm thử hoặc các phần phụ thuộc của kiểm thử, (2) kiểm thử được đánh dấu là bên ngoài, (3) nhiều lần chạy kiểm thử được yêu cầu bằng --runs_per_test hoặc(4) kiểm thử trước đó không thành công. Nếu được đặt thành "yes", Bazel sẽ lưu vào bộ nhớ đệm tất cả kết quả kiểm thử, ngoại trừ những kiểm thử được đánh dấu là bên ngoài. Nếu bạn đặt thành "no", Bazel sẽ không lưu vào bộ nhớ đệm bất kỳ kết quả kiểm thử nào.
--[no]experimental_cancel_concurrent_tests
mặc định: "false"-
Nếu đúng, Blaze sẽ huỷ các thử nghiệm đang chạy đồng thời trong lần chạy thành công đầu tiên. Tuỳ chọn này chỉ hữu ích khi kết hợp với --runs_per_test_detects_flakes.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_fetch_all_coverage_outputs
mặc định: "false"-
Nếu đúng, Bazel sẽ tìm nạp toàn bộ thư mục dữ liệu về mức độ phù hợp cho từng kiểm thử trong quá trình chạy mức độ phù hợp.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_generate_llvm_lcov
mặc định: "false"-
Nếu đúng, mức độ phù hợp cho clang sẽ tạo ra một báo cáo LCOV.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_j2objc_header_map
mặc định: "true"-
Có tạo bản đồ tiêu đề J2ObjC song song với quá trình chuyển đổi J2ObjC hay không.
Thẻ:experimental
--[no]experimental_j2objc_shorter_header_path
mặc định: "false"-
Có tạo bằng đường dẫn tiêu đề ngắn hơn hay không (sử dụng "_ios" thay vì "_j2objc").
Thẻ:affects_outputs
,experimental
--experimental_java_classpath=<off, javabuilder or bazel>
mặc định: "javabuilder"- Cho phép giảm đường dẫn lớp để biên dịch Java.
--[no]experimental_limit_android_lint_to_android_constrained_java
mặc định: "false"-
Không có thao tác, chỉ giữ lại để tương thích ngược
Thẻ:affects_outputs
,experimental
--[no]experimental_run_android_lint_on_java_rules
mặc định: "false"-
Có xác thực các nguồn java_* hay không.
Thẻ:affects_outputs
,experimental
--[no]explicit_java_test_deps
mặc định: "false"- Chỉ định rõ ràng một phần phụ thuộc vào JUnit hoặc Hamcrest trong java_test thay vì vô tình lấy từ các deps của TestRunner. Hiện tại, tính năng này chỉ hoạt động với bazel.
--host_java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java mà các công cụ được thực thi trong quá trình tạo bản dựng sử dụng.
--host_javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để truyền đến javac khi tạo các công cụ được thực thi trong quá trình tạo.
--host_jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến máy ảo Java khi tạo các công cụ được thực thi trong quá trình tạo. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của mỗi mục tiêu java_binary.
--[no]incompatible_check_sharding_support
mặc định: "true"-
Nếu đúng, Bazel sẽ không thực hiện được một kiểm thử phân đoạn nếu trình chạy kiểm thử không cho biết rằng trình chạy này hỗ trợ phân đoạn bằng cách chạm vào tệp tại đường dẫn trong TEST_SHARD_STATUS_FILE. Nếu là false, trình chạy kiểm thử không hỗ trợ phân đoạn sẽ khiến tất cả các kiểm thử chạy trong mỗi phân đoạn.
Thẻ:incompatible_change
--[no]incompatible_exclusive_test_sandboxed
mặc định: "true"-
Nếu đúng, các thử nghiệm độc quyền sẽ chạy với chiến lược hộp cát. Thêm thẻ "local" để buộc chạy thử nghiệm độc quyền cục bộ
Thẻ:incompatible_change
--[no]incompatible_strict_action_env
mặc định: "false"-
Nếu đặt là true, Bazel sẽ sử dụng một môi trường có giá trị tĩnh cho PATH và không kế thừa LD_LIBRARY_PATH. Sử dụng --action_env=ENV_VARIABLE nếu bạn muốn kế thừa các biến môi trường cụ thể từ máy khách, nhưng lưu ý rằng việc này có thể ngăn chặn việc lưu vào bộ nhớ đệm trên nhiều người dùng nếu bạn sử dụng bộ nhớ đệm dùng chung.
Thẻ:loading_and_analysis
,incompatible_change
--j2objc_translation_flags=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến công cụ J2ObjC.
--java_debug
-
Khiến máy ảo Java của một bài kiểm thử Java phải chờ kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như jdb) trước khi bắt đầu kiểm thử. Ngụ ý -test_output=streamed.
Mở rộng thành:
--test_arg=--wrapper_script_flag=--debug
--test_output=streamed
--test_strategy=exclusive
--test_timeout=9999
--nocache_test_results
--[no]java_deps
mặc định: "true"- Tạo thông tin về phần phụ thuộc (hiện tại là đường dẫn lớp thời gian biên dịch) cho mỗi mục tiêu Java.
--[no]java_header_compilation
mặc định: "true"- Biên dịch ijar trực tiếp từ nguồn.
--java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java
--java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java sẽ dùng khi tạo các tệp nhị phân Java. Nếu bạn đặt cờ này thành chuỗi trống, thì trình khởi chạy JDK sẽ được dùng. Thuộc tính "launcher" sẽ ghi đè cờ này.
--java_runtime_version=<a string>
mặc định: "local_jdk"- Phiên bản thời gian chạy Java
--javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến javac.
--jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để chuyển đến máy ảo Java. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của từng mục tiêu java_binary.
--legacy_main_dex_list_generator=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng tạo danh sách các lớp phải có trong dex chính khi biên dịch multidex cũ.
--optimizing_dexer=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng cho việc lập chỉ mục dex mà không cần phân đoạn.
--plugin=<a build target label>
nhiều mục đích sử dụng được tích luỹ- Các trình bổ trợ cần dùng trong bản dựng. Hiện hoạt động với java_plugin.
--proguard_top=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định phiên bản ProGuard sẽ dùng để xoá mã khi tạo một tệp nhị phân Java.
--proto_compiler=<a build target label>
mặc định: "@bazel_tools//tools/proto:protoc"-
Nhãn của trình biên dịch proto.
Thẻ:affects_outputs
,loading_and_analysis
--[no]proto_profile
mặc định: "true"- Có nên truyền profile_path đến trình biên dịch proto hay không.
Thẻ:affects_outputs
,loading_and_analysis
--proto_profile_path=<a build target label>
mặc định: xem nội dung mô tả-
Hồ sơ cần truyền đến trình biên dịch proto dưới dạng profile_path. Nếu bạn không đặt, nhưng --proto_profile là true (mặc định), thì sẽ suy ra đường dẫn từ --fdo_optimize.
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_cc=<a build target label>
default: "@bazel_tools//tools/proto:cc_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch proto C++
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_j2objc=<a build target label>
mặc định: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức j2objc
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_java=<a build target label>
mặc định: "@bazel_tools//tools/proto:java_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức Java
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_javalite=<a build target label>
mặc định: "@bazel_tools//tools/proto:javalite_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức JavaLite
Thẻ:affects_outputs
,loading_and_analysis
--protocopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch protobuf.
Thẻ:affects_outputs
--[no]runs_per_test_detects_flakes
mặc định: "false"- Nếu đúng, mọi phân đoạn có ít nhất một lần chạy/thử nghiệm thành công và ít nhất một lần chạy/thử nghiệm thất bại sẽ có trạng thái FLAKY.
--shell_executable=<a path>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối đến tệp thực thi shell mà Bazel sẽ dùng. Nếu bạn không đặt biến này, nhưng biến môi trường BAZEL_SH được đặt trong lệnh gọi Bazel đầu tiên (khởi động một máy chủ Bazel), thì Bazel sẽ sử dụng biến đó. Nếu bạn không đặt cả hai, Bazel sẽ sử dụng đường dẫn mặc định được mã hoá cứng, tuỳ thuộc vào hệ điều hành mà Bazel chạy trên đó (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, tất cả các hệ điều hành khác: /bin/bash). Xin lưu ý rằng việc sử dụng một trình bao không tương thích với bash có thể dẫn đến lỗi bản dựng hoặc lỗi thời gian chạy của các tệp nhị phân đã tạo.
Thẻ:loading_and_analysis
--test_arg=<a string>
nhiều mục đích sử dụng được tích luỹ- Chỉ định các lựa chọn và đối số bổ sung cần được truyền đến tệp thực thi kiểm thử. Có thể dùng nhiều lần để chỉ định một số đối số. Nếu nhiều kiểm thử được thực thi, mỗi kiểm thử sẽ nhận được các đối số giống hệt nhau. Chỉ được dùng bằng lệnh "bazel test".
--test_filter=<a string>
mặc định: xem nội dung mô tả- Chỉ định một bộ lọc để chuyển tiếp đến khung kiểm thử. Dùng để giới hạn số lượng bài kiểm thử được chạy. Xin lưu ý rằng điều này không ảnh hưởng đến những mục tiêu được tạo.
--test_result_expiration=<an integer>
mặc định: "-1"- Tuỳ chọn này không được dùng nữa và không có hiệu lực.
--[no]test_runner_fail_fast
mặc định: "false"- Chuyển tiếp lựa chọn thất bại nhanh đến trình chạy kiểm thử. Trình chạy kiểm thử sẽ dừng thực thi khi gặp lỗi đầu tiên.
--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce>
mặc định: "explicit"- Chỉ định chiến lược phân đoạn kiểm thử: "explicit" để chỉ sử dụng tính năng phân đoạn nếu có thuộc tính BUILD "shard_count". "disabled" để không bao giờ sử dụng tính năng phân đoạn kiểm thử. "forced=k" để thực thi "k" phân đoạn để kiểm thử bất kể thuộc tính BUILD "shard_count".
--tool_java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java dùng để thực thi các công cụ cần thiết trong quá trình tạo
--tool_java_runtime_version=<a string>
default: "remotejdk_11"- Phiên bản thời gian chạy Java được dùng để thực thi các công cụ trong quá trình tạo
--[no]use_ijars
mặc định: "true"- Nếu được bật, lựa chọn này sẽ khiến quá trình biên dịch Java sử dụng các tệp jar giao diện. Điều này sẽ giúp tăng tốc độ biên dịch gia tăng, nhưng thông báo lỗi có thể khác.
Tuỳ chọn kết xuất
- Các tuỳ chọn kiểm soát đầu ra của lệnh:
--[no]action_cache
mặc định: "false"-
Kết xuất nội dung bộ nhớ đệm của thao tác.
Thẻ:bazel_monitoring
--memory=<memory mode>
mặc định: xem nội dung mô tả-
Kết xuất mức sử dụng bộ nhớ của nút Skyframe đã cho.
Thẻ:bazel_monitoring
--[no]packages
mặc định: "false"-
Kết xuất nội dung bộ nhớ đệm của gói.
Thẻ:bazel_monitoring
--[no]rule_classes
mặc định: "false"-
Kết xuất các lớp quy tắc.
Thẻ:bazel_monitoring
--[no]rules
mặc định: "false"-
Quy tắc kết xuất, bao gồm số lượng và mức sử dụng bộ nhớ (nếu bộ nhớ được theo dõi).
Thẻ:bazel_monitoring
--skyframe=<off, summary, count, value, deps, rdeps, function_graph, working_set or working_set_frontier_deps>
mặc định: "tắt"-
Kết xuất biểu đồ Skyframe.
Thẻ:bazel_monitoring
--skykey_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: ".*"-
Bộ lọc biểu thức chính quy của tên SkyKey để xuất. Chỉ dùng với --skyframe=deps, rdeps, function_graph.
Thẻ:bazel_monitoring
--skylark_memory=<a string>
mặc định: xem nội dung mô tả-
Kết xuất một hồ sơ bộ nhớ tương thích với pprof vào đường dẫn đã chỉ định. Để tìm hiểu thêm, vui lòng xem https://github.com/google/pprof.
Thẻ:bazel_monitoring
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Lựa chọn tìm nạp
Kế thừa tất cả các lựa chọn từ test.
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]all
mặc định: "false"-
Tìm nạp tất cả kho lưu trữ bên ngoài cần thiết để tạo bất kỳ mục tiêu hoặc kho lưu trữ nào. Đây là giá trị mặc định nếu bạn không cung cấp cờ và đối số nào khác. Chỉ hoạt động khi --enable_bzlmod ở trạng thái bật.
Thẻ:changes_inputs
--[no]keep_going
[-k
] mặc định: "false"-
Tiếp tục càng nhiều càng tốt sau khi xảy ra lỗi. Mặc dù không thể phân tích mục tiêu không thành công và những mục tiêu phụ thuộc vào mục tiêu đó, nhưng bạn có thể phân tích các điều kiện tiên quyết khác của những mục tiêu này.
Thẻ:eagerness_to_exit
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của Bzlmod:
--[no]configure
mặc định: "false"-
Chỉ tìm nạp những kho lưu trữ được đánh dấu là "configure" (định cấu hình) cho mục đích định cấu hình hệ thống. Chỉ hoạt động khi --enable_bzlmod ở trạng thái bật.
Thẻ:changes_inputs
--[no]force
mặc định: "false"-
Bỏ qua kho lưu trữ hiện có (nếu có) và buộc tìm nạp lại kho lưu trữ. Chỉ hoạt động khi --enable_bzlmod ở trạng thái bật.
Thẻ:changes_inputs
--repo=<a string>
nhiều mục đích sử dụng được tích luỹ-
Chỉ tìm nạp kho lưu trữ đã chỉ định, có thể là {@apparent_repo_name} hoặc {@@canonical_repo_name}. Chỉ hoạt động khi --enable_bzlmod ở trạng thái bật.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của nhật ký:
--experimental_repository_resolved_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi giá trị Starlark bằng thông tin đã phân giải của tất cả các quy tắc kho lưu trữ Starlark đã được thực thi.
Thẻ:affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]experimental_inprocess_symlink_creation
mặc định: "true"- Có thực hiện các lệnh gọi trực tiếp đến hệ thống tệp để tạo cây liên kết tượng trưng hay không thay vì uỷ quyền cho một quy trình trợ giúp.
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_persistent_aar_extractor
mặc định: "false"-
Bật trình trích xuất aar liên tục bằng cách sử dụng các worker.
Thẻ:execution
,experimental
--[no]experimental_remotable_source_manifests
mặc định: "false"-
Có nên thực hiện các thao tác trên tệp kê khai nguồn từ xa hay không
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_split_coverage_postprocessing
mặc định: "false"-
Nếu đúng, Bazel sẽ chạy quy trình xử lý hậu kỳ về mức độ phù hợp cho kiểm thử trong một quy trình tạo mới.
Thẻ:execution
,experimental
--[no]experimental_strict_fileset_output
mặc định: "false"-
Nếu bạn bật lựa chọn này, thì các nhóm tệp sẽ coi tất cả các cấu phần phần mềm đầu ra là tệp thông thường. Chúng sẽ không đi qua các thư mục hoặc nhạy cảm với các đường liên kết tượng trưng.
Thẻ:execution
,experimental
--[no]incompatible_modify_execution_info_additive
mặc định: "false"-
Khi được bật, việc truyền nhiều cờ --modify_execution_info sẽ có tính cộng dồn. Khi bị vô hiệu hoá, hệ thống chỉ xem xét cờ cuối cùng.
Thẻ:execution
,affects_outputs
,loading_and_analysis
,incompatible_change
--modify_execution_info=<regex=[+-]key,regex=[+-]key,...>
nhiều mục đích sử dụng được tích luỹ-
Thêm hoặc xoá các khoá khỏi thông tin thực thi của một thao tác dựa trên từ viết tắt của thao tác. Chỉ áp dụng cho những thao tác hỗ trợ thông tin thực thi. Nhiều thao tác phổ biến hỗ trợ thông tin thực thi, ví dụ: Genrule, CppCompile, Javac, StarlarkAction, TestRunner. Khi chỉ định nhiều giá trị, thứ tự sẽ quan trọng vì nhiều biểu thức chính quy có thể áp dụng cho cùng một mã nhớ.
Cú pháp: "regex=[+-]key,regex=[+-]key,...".
Ví dụ: ".*=+x,.*=-y,.*=+z" sẽ thêm "x" và "z" vào, đồng thời xoá "y" khỏi thông tin thực thi cho tất cả các thao tác.
"Genrule=+requires-x" sẽ thêm "requires-x" vào thông tin thực thi cho tất cả các thao tác Genrule.
"(?!Genrule).*=-requires-x" sẽ xoá "requires-x" khỏi thông tin thực thi cho tất cả các thao tác không phải Genrule.
Thẻ:execution
,affects_outputs
,loading_and_analysis
--persistent_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_android_dex_desugar
--strategy=Desugar=worker
--strategy=DexBuilder=worker
Thẻ:host_machine_resource_optimizations
,execution
--persistent_android_resource_processor
-
Bật trình xử lý tài nguyên Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_busybox_tools
--strategy=AaptPackage=worker
--strategy=AndroidResourceParser=worker
--strategy=AndroidResourceValidator=worker
--strategy=AndroidResourceCompiler=worker
--strategy=RClassGenerator=worker
--strategy=AndroidResourceLink=worker
--strategy=AndroidAapt2=worker
--strategy=AndroidAssetMerger=worker
--strategy=AndroidResourceMerger=worker
--strategy=AndroidCompiledResourceMerger=worker
--strategy=ManifestMerger=worker
--strategy=AndroidManifestMerger=worker
--strategy=Aapt2Optimize=worker
--strategy=AARGenerator=worker
--strategy=ProcessDatabinding=worker
--strategy=GenerateDataBindingBaseClasses=worker
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_dex_desugar
--internal_persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_resource_processor
-
Bật trình xử lý tài nguyên Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_resource_processor
--modify_execution_info=AaptPackage=+supports-multiplex-workers
--modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
--modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
--modify_execution_info=RClassGenerator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
--modify_execution_info=AndroidAapt2=+supports-multiplex-workers
--modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
--modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
--modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
--modify_execution_info=ManifestMerger=+supports-multiplex-workers
--modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
--modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
--modify_execution_info=AARGenerator=+supports-multiplex-workers
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_tools
-
Bật các công cụ Android liên tục và được ghép kênh (dexing, desugaring, xử lý tài nguyên).
Mở rộng thành:
--internal_persistent_multiplex_busybox_tools
--persistent_multiplex_android_resource_processor
--persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--[no]use_target_platform_for_tests
mặc định: "false"-
Nếu đúng, Bazel sẽ sử dụng nền tảng mục tiêu để chạy các kiểm thử thay vì nhóm thực thi kiểm thử.
Thẻ:execution
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--android_compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch mục tiêu Android.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_manifest_merger=<legacy, android or force_android>
mặc định: "android"-
Chọn công cụ sáp nhập tệp kê khai để dùng cho các quy tắc android_binary. Cờ giúp chuyển đổi sang công cụ sáp nhập tệp kê khai Android từ công cụ sáp nhập cũ.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_platforms=<a build target label>
mặc định: ""-
Đặt các nền tảng mà mục tiêu android_binary sử dụng. Nếu bạn chỉ định nhiều nền tảng, thì tệp nhị phân sẽ là một APK lớn, chứa các tệp nhị phân gốc cho từng nền tảng mục tiêu được chỉ định.
Thẻ:changes_inputs
,loading_and_analysis
,loses_incremental_state
--apple_crosstool_top=<a build target label>
default: "@bazel_tools//tools/cpp:toolchain"-
Nhãn của gói crosstool sẽ được dùng trong các quy tắc Apple và Objc cũng như các phần phụ thuộc của chúng.
Thẻ:loses_incremental_state
,changes_inputs
--cc_output_directory_tag=<a string>
mặc định: ""-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:affects_outputs
--compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch C++ cần dùng để biên dịch mục tiêu.
Thẻ:loading_and_analysis
,execution
--coverage_output_generator=<a build target label>
default: "@bazel_tools//tools/test:lcov_merger"-
Vị trí của tệp nhị phân dùng để xử lý hậu kỳ các báo cáo phạm vi thô. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Giá trị mặc định là "//tools/test:lcov_merger".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_report_generator=<a build target label>
default: "@bazel_tools//tools/test:coverage_report_generator"-
Vị trí của tệp nhị phân dùng để tạo báo cáo về mức độ phù hợp. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Mặc định là "//tools/test:coverage_report_generator".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_support=<a build target label>
default: "@bazel_tools//tools/test:coverage_support"-
Vị trí của các tệp hỗ trợ bắt buộc trên đầu vào của mọi thao tác kiểm thử thu thập mức độ phù hợp của mã. Giá trị mặc định là "//tools/test:coverage_support".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--custom_malloc=<a build target label>
mặc định: xem nội dung mô tả-
Chỉ định một cách triển khai malloc tuỳ chỉnh. Chế độ cài đặt này sẽ ghi đè các thuộc tính malloc trong quy tắc bản dựng.
Thẻ:changes_inputs
,affects_outputs
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các biểu thức chính quy được phân tách bằng dấu phẩy, mỗi biểu thức có thể có tiền tố là dấu "-" (biểu thức phủ định), được chỉ định (=) cho danh sách các mục tiêu giá trị ràng buộc được phân tách bằng dấu phẩy. Nếu một mục tiêu không khớp với biểu thức phủ định nào và khớp với ít nhất một biểu thức khẳng định, thì quá trình phân giải chuỗi công cụ của mục tiêu đó sẽ được thực hiện như thể mục tiêu đó đã khai báo các giá trị ràng buộc dưới dạng các ràng buộc thực thi. Ví dụ: //demo,-test=@platforms//cpus:x86_64 sẽ thêm "x86_64" vào mọi mục tiêu trong //demo, ngoại trừ những mục tiêu có tên chứa "test".
Thẻ:loading_and_analysis
--[no]experimental_include_xcode_execution_requirements
mặc định: "false"-
Nếu được đặt, hãy thêm yêu cầu thực thi "requires-xcode:{version}" vào mọi thao tác Xcode. Nếu phiên bản Xcode có nhãn được phân tách bằng dấu gạch ngang, hãy thêm yêu cầu thực thi "requires-xcode-label:{version_label}".
Thẻ:loses_incremental_state
,loading_and_analysis
,execution
,experimental
--[no]experimental_prefer_mutual_xcode
mặc định: "true"-
Nếu đúng, hãy sử dụng Xcode gần đây nhất có sẵn trên cả thiết bị cục bộ và từ xa. Nếu là false hoặc nếu không có phiên bản nào tương thích, hãy sử dụng phiên bản Xcode cục bộ được chọn thông qua xcode-select.
Thẻ:loses_incremental_state
,experimental
--extra_execution_platforms=<comma-separated list of options>
mặc định: ""-
Các nền tảng có sẵn dưới dạng nền tảng thực thi để chạy các thao tác. Bạn có thể chỉ định nền tảng theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các nền tảng này sẽ được cân nhắc trước những nền tảng được khai báo trong tệp WORKSPACE bằng register_execution_platforms(). Bạn chỉ có thể đặt lựa chọn này một lần; các phiên bản sau sẽ ghi đè các chế độ cài đặt cờ trước đó.
Thẻ:execution
--extra_toolchains=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các quy tắc chuỗi công cụ cần được xem xét trong quá trình phân giải chuỗi công cụ. Bạn có thể chỉ định chuỗi công cụ theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các chuỗi công cụ này sẽ được xem xét trước những chuỗi công cụ được khai báo trong tệp WORKSPACE bằng register_toolchains().
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--grte_top=<a label>
mặc định: xem nội dung mô tả-
Nhãn cho một thư viện libc đã đăng ký. Giá trị mặc định được chọn theo chuỗi công cụ crosstool và bạn hầu như không bao giờ cần ghi đè giá trị này.
Thẻ:action_command_lines
,affects_outputs
--host_compiler=<a string>
mặc định: xem nội dung mô tả-
Cờ không hoạt động. Sẽ bị xoá trong một bản phát hành sau này.
Thẻ:loading_and_analysis
,execution
--host_grte_top=<a label>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, chế độ cài đặt này sẽ ghi đè thư mục cấp cao nhất libc (--grte_top) cho cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_platform=<a build target label>
mặc định: "@bazel_tools//tools:host_platform"-
Nhãn của một quy tắc nền tảng mô tả hệ thống máy chủ.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--[no]incompatible_bazel_test_exec_run_under
mặc định: "false"-
Nếu được bật, "bazel test --run_under=//:runner" sẽ tạo "//:runner" trong cấu hình exec. Nếu bị tắt, thao tác này sẽ tạo "//:runner" trong cấu hình đích. Bazel thực thi các kiểm thử trên các máy thực thi, vì vậy, phương án đầu tiên chính xác hơn. Điều này không ảnh hưởng đến "bazel run", luôn tạo "`--run_under=//foo" trong cấu hình mục tiêu.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features
mặc định: "true"-
Nếu đúng, Bazel sẽ không bật các tính năng "host" và "nonhost" trong chuỗi công cụ c++ (xem https://github.com/bazelbuild/bazel/issues/7407 để biết thêm thông tin).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enable_apple_toolchain_resolution
mặc định: "false"-
Sử dụng độ phân giải chuỗi công cụ để chọn Apple SDK cho các quy tắc của Apple (Starlark và gốc)
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_remove_legacy_whole_archive
mặc định: "true"-
Nếu đúng, theo mặc định, Bazel sẽ không liên kết các phần phụ thuộc của thư viện dưới dạng toàn bộ kho lưu trữ (xem https://github.com/bazelbuild/bazel/issues/7362 để biết hướng dẫn di chuyển).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_strip_executable_safely
mặc định: "false"-
Nếu đúng, thao tác xoá cho các tệp thực thi sẽ sử dụng cờ -x. Cờ này không làm gián đoạn quá trình phân giải biểu tượng động.
Thẻ:action_command_lines
,incompatible_change
-
Sử dụng các đối tượng dùng chung của giao diện nếu được chuỗi công cụ hỗ trợ. Tất cả các chuỗi công cụ ELF hiện đều hỗ trợ chế độ cài đặt này.
Thẻ:loading_and_analysis
,affects_outputs
,affects_outputs
--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của iOS SDK cần dùng để tạo ứng dụng iOS. Nếu không được chỉ định, sẽ sử dụng phiên bản iOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của SDK macOS cần dùng để tạo các ứng dụng macOS. Nếu không được chỉ định, sẽ sử dụng phiên bản SDK macOS mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--minimum_os_version=<a string>
mặc định: xem nội dung mô tả-
Phiên bản hệ điều hành tối thiểu mà mục tiêu biên dịch của bạn hướng đến.
Thẻ:loading_and_analysis
,affects_outputs
--platform_mappings=<a main workspace-relative path>
mặc định: ""-
Vị trí của một tệp ánh xạ mô tả nền tảng cần sử dụng nếu không có nền tảng nào được đặt hoặc cờ cần đặt khi đã có nền tảng. Phải tương ứng với thư mục gốc của không gian làm việc chính. Mặc định là "platform_mappings" (một tệp ngay bên dưới thư mục gốc của không gian làm việc).
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
,immutable
--platforms=<a build target label>
mặc định: ""-
Nhãn của các quy tắc nền tảng mô tả nền tảng mục tiêu cho lệnh hiện tại.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--python_path=<a string>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối của trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--python_top=<a build target label>
mặc định: xem nội dung mô tả-
Nhãn của py_runtime đại diện cho trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản SDK tvOS cần dùng để tạo ứng dụng tvOS. Nếu không được chỉ định, sẽ sử dụng phiên bản tvOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của watchOS SDK cần dùng để tạo ứng dụng watchOS. Nếu không được chỉ định, hãy sử dụng phiên bản watchOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--xcode_version=<a string>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, hãy sử dụng Xcode của phiên bản đã cho cho các thao tác xây dựng có liên quan. Nếu không chỉ định, hãy sử dụng phiên bản mặc định của trình thực thi Xcode.
Thẻ:loses_incremental_state
--xcode_version_config=<a build target label>
mặc định: "@bazel_tools//tools/cpp:host_xcodes"-
Nhãn của quy tắc xcode_config sẽ được dùng để chọn phiên bản Xcode trong cấu hình bản dựng.
Thẻ:loses_incremental_state
,loading_and_analysis
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]apple_generate_dsym
mặc định: "false"-
Có tạo (các) tệp biểu tượng gỡ lỗi (.dSYM) hay không.
Thẻ:affects_outputs
,action_command_lines
--[no]build_runfile_links
mặc định: "true"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfile cho tất cả các mục tiêu. Nếu là false, chỉ ghi các tệp này khi cần thiết theo lệnh chạy, kiểm thử hoặc thao tác cục bộ.
Thẻ:affects_outputs
--[no]build_runfile_manifests
mặc định: "true"-
Nếu đúng, hãy ghi tệp kê khai runfile cho tất cả các mục tiêu. Nếu là false, hãy bỏ qua các giá trị này. Các kiểm thử cục bộ sẽ không chạy được khi có giá trị false.
Thẻ:affects_outputs
--[no]build_test_dwp
mặc định: "false"-
Nếu được bật, khi tạo các bài kiểm thử C++ một cách tĩnh và bằng cách phân hạch, tệp .dwp cho tệp nhị phân kiểm thử cũng sẽ được tạo tự động.
Thẻ:loading_and_analysis
,affects_outputs
--cc_proto_library_header_suffixes=<comma-separated set of options>
mặc định: ".pb.h"-
Đặt hậu tố của các tệp tiêu đề mà cc_proto_library tạo.
Thẻ:affects_outputs
,loading_and_analysis
--cc_proto_library_source_suffixes=<comma-separated set of options>
mặc định: ".pb.cc"-
Đặt hậu tố của các tệp nguồn mà cc_proto_library tạo ra.
Thẻ:affects_outputs
,loading_and_analysis
--[no]experimental_proto_descriptor_sets_include_source_info
mặc định: "false"-
Chạy các thao tác bổ sung cho các phiên bản API Java thay thế trong proto_library.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_save_feature_state
mặc định: "false"-
Lưu trạng thái của các tính năng đã bật và được yêu cầu dưới dạng đầu ra của quá trình biên dịch.
Thẻ:affects_outputs
,experimental
--fission=<a set of compilation modes>
mặc định: "no"-
Chỉ định chế độ biên dịch nào sử dụng phân hạch cho các hoạt động biên dịch và liên kết C++. Có thể là bất kỳ tổ hợp nào của {'fastbuild', 'dbg', 'opt'} hoặc các giá trị đặc biệt "yes" để bật tất cả các chế độ và "no" để tắt tất cả các chế độ.
Thẻ:loading_and_analysis
,action_command_lines
,affects_outputs
--[no]incompatible_always_include_files_in_data
mặc định: "true"-
Nếu đúng, các quy tắc gốc sẽ thêm <code>DefaultInfo.files</code> của các phần phụ thuộc dữ liệu vào runfiles, khớp với hành vi được đề xuất cho các quy tắc Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid).
Thẻ:affects_outputs
,incompatible_change
--[no]legacy_external_runfiles
mặc định: "false"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfiles cho các kho lưu trữ bên ngoài trong .runfiles/wsname/external/repo (ngoài .runfiles/repo).
Thẻ:affects_outputs
--[no]objc_generate_linkmap
mặc định: "false"-
Chỉ định xem có tạo tệp linkmap hay không.
Thẻ:affects_outputs
--[no]save_temps
mặc định: "false"-
Nếu được đặt, các kết quả tạm thời từ gcc sẽ được lưu. Các tệp này bao gồm tệp .s (mã hợp ngữ), tệp .i (C đã xử lý trước) và tệp .ii (C++ đã xử lý trước).
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, thay vì sự tồn tại của đầu ra:
--action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--allowed_cpu_values=<comma-separated set of options>
mặc định: ""-
Các giá trị được phép cho cờ --cpu.
Thẻ:changes_inputs
,affects_outputs
--[no]android_databinding_use_androidx
mặc định: "true"-
Tạo các tệp liên kết dữ liệu tương thích với AndroidX. Chỉ dùng với tính năng liên kết dữ liệu phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]android_databinding_use_v3_4_args
mặc định: "true"-
Sử dụng android databinding phiên bản 2 với đối số 3.4.0. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--android_dynamic_mode=<off, default or fully>
mặc định: "tắt"-
Xác định xem các phần phụ thuộc C++ của các quy tắc Android sẽ được liên kết một cách linh động khi cc_binary không tạo rõ ràng một thư viện dùng chung hay không. "default" có nghĩa là bazel sẽ chọn có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:affects_outputs
,loading_and_analysis
--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency>
mặc định: "theo bảng chữ cái"-
Đặt thứ tự của các tệp kê khai được truyền đến trình sáp nhập tệp kê khai cho các tệp nhị phân Android. ALPHABETICAL nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với execroot. ALPHABETICAL_BY_CONFIGURATION có nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với thư mục cấu hình trong thư mục đầu ra. DEPENDENCY có nghĩa là các tệp kê khai được sắp xếp theo thứ tự, trong đó tệp kê khai của mỗi thư viện sẽ xuất hiện trước tệp kê khai của các phần phụ thuộc.
Thẻ:action_command_lines
,execution
--[no]android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
--[no]build_python_zip
mặc định: "auto"-
Tạo tệp zip thực thi Python; bật trên Windows, tắt trên các nền tảng khác
Thẻ:affects_outputs
--catalyst_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple Catalyst.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]collect_code_coverage
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ đo lường mã (sử dụng tính năng đo lường ngoại tuyến nếu có thể) và sẽ thu thập thông tin về mức độ phù hợp trong quá trình kiểm thử. Chỉ những mục tiêu khớp với --instrumentation_filter mới bị ảnh hưởng. Thông thường, bạn không nên chỉ định trực tiếp lựa chọn này mà nên dùng lệnh "bazel coverage".
Thẻ:affects_outputs
--compilation_mode=<fastbuild, dbg or opt>
[-c
] mặc định: "fastbuild"-
Chỉ định chế độ mà tệp nhị phân sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn C.
Thẻ:action_command_lines
,affects_outputs
--copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc.
Thẻ:action_command_lines
,affects_outputs
--cpu=<a string>
mặc định: ""-
CPU mục tiêu.
Thẻ:changes_inputs
,affects_outputs
--cs_fdo_absolute_path=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ CSFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên đường dẫn tuyệt đối của tệp zip chứa tệp hồ sơ, tệp hồ sơ LLVM thô hoặc được lập chỉ mục.
Thẻ:affects_outputs
--cs_fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo các tệp nhị phân bằng tính năng đo lường FDO theo ngữ cảnh. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--cs_fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
cs_fdo_profile đại diện cho hồ sơ theo ngữ cảnh sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch các tệp nguồn C++.
Thẻ:action_command_lines
,affects_outputs
--define=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lựa chọn --define chỉ định một phép gán cho biến bản dựng. Trong trường hợp có nhiều giá trị cho một biến, giá trị cuối cùng sẽ được dùng.
Thẻ:changes_inputs
,affects_outputs
--dynamic_mode=<off, default or fully>
mặc định: "default"-
Xác định xem các tệp nhị phân C++ sẽ được liên kết một cách linh động hay không. "default" có nghĩa là Bazel sẽ chọn xem có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:loading_and_analysis
,affects_outputs
--[no]enable_propeller_optimize_absolute_paths
mặc định: "true"-
Nếu được đặt, mọi việc sử dụng đường dẫn tuyệt đối để tối ưu hoá cánh quạt sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_remaining_fdo_absolute_paths
mặc định: "true"-
Nếu bạn đặt chính sách này, mọi việc sử dụng đường dẫn tuyệt đối cho FDO sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_runfiles
mặc định: "auto"-
Bật cây liên kết tượng trưng runfiles; Theo mặc định, chế độ này sẽ tắt trên Windows và bật trên các nền tảng khác.
Thẻ:affects_outputs
--experimental_action_listener=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Ngừng sử dụng và thay bằng các khía cạnh. Sử dụng action_listener để đính kèm extra_action vào các thao tác xây dựng hiện có.
Thẻ:execution
,experimental
--[no]experimental_android_compress_java_resources
mặc định: "false"-
Nén tài nguyên Java trong APK
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_databinding_v2
mặc định: "true"-
Sử dụng tính năng liên kết dữ liệu Android phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_rewrite_dexes_with_rex
mặc định: "false"-
sử dụng công cụ rex để viết lại các tệp dex
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_collect_code_coverage_for_generated_files
mặc định: "false"-
Nếu được chỉ định, Bazel cũng sẽ tạo thông tin thu thập mức độ phù hợp cho các tệp đã tạo.
Thẻ:affects_outputs
,experimental
--experimental_objc_fastbuild_options=<comma-separated list of options>
mặc định: "-O0,-DDEBUG=1"-
Sử dụng các chuỗi này làm lựa chọn trình biên dịch fastbuild objc.
Thẻ:action_command_lines
--[no]experimental_omitfp
mặc định: "false"-
Nếu đúng, hãy dùng libunwind để huỷ ngăn xếp và biên dịch bằng -fomit-frame-pointer và -fasynchronous-unwind-tables.
Thẻ:action_command_lines
,affects_outputs
,experimental
--experimental_output_paths=<off, content or strip>
mặc định: "tắt"-
Nên dùng mô hình nào để quy tắc ghi đầu ra ở đâu trong cây đầu ra, đặc biệt là đối với các bản dựng đa nền tảng / đa cấu hình. Đây là một tính năng thử nghiệm. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/6526 để biết thông tin chi tiết. Các thao tác Starlark có thể chọn tham gia vào việc liên kết đường dẫn bằng cách thêm khoá "supports-path-mapping" vào từ điển "execution_requirements".
Thẻ:loses_incremental_state
,bazel_internal_configuration
,affects_outputs
,execution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi mục nhập phải có dạng label=value, trong đó label đề cập đến một nền tảng và values là tên viết tắt mong muốn dùng trong đường dẫn đầu ra. Chỉ được dùng khi --experimental_platform_in_output_dir là true. Có mức độ ưu tiên đặt tên cao nhất.
Thẻ:affects_outputs
,experimental
--[no]experimental_platform_in_output_dir
mặc định: "false"-
Nếu đúng, tên viết tắt của nền tảng mục tiêu sẽ được dùng trong tên thư mục đầu ra thay vì CPU. Lược đồ chính xác là thử nghiệm và có thể thay đổi: Trước tiên, trong trường hợp hiếm gặp khi lựa chọn --platforms không có chính xác một giá trị, thì hàm băm của lựa chọn platforms sẽ được sử dụng. Tiếp theo, nếu có tên ngắn nào cho nền tảng hiện tại được đăng ký bằng --experimental_override_name_platform_in_output_dir, thì tên ngắn đó sẽ được dùng. Sau đó, nếu bạn đặt --experimental_use_platforms_in_output_dir_legacy_heuristic, hãy dùng tên ngắn dựa trên Nhãn nền tảng hiện tại. Cuối cùng, hàm băm của lựa chọn nền tảng sẽ được dùng làm phương án cuối cùng.
Thẻ:affects_outputs
,experimental
--[no]experimental_py_binaries_include_label
mặc định: "false"-
Các mục tiêu py_binary bao gồm cả nhãn của chúng ngay cả khi tính năng đóng dấu bị tắt.
Thẻ:affects_outputs
,experimental
--[no]experimental_use_llvm_covmap
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ tạo thông tin về bản đồ mức độ phù hợp llvm-cov thay vì gcov khi collect_code_coverage được bật.
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_use_platforms_in_output_dir_legacy_heuristic
mặc định: "true"-
Vui lòng chỉ sử dụng cờ này trong quá trình di chuyển hoặc thử nghiệm theo đề xuất. Xin lưu ý rằng phương pháp phỏng đoán này có những điểm thiếu sót đã biết và bạn nên di chuyển để chỉ dựa vào --experimental_override_name_platform_in_output_dir.
Thẻ:affects_outputs
,experimental
--fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo tệp nhị phân bằng tính năng đo lường FDO. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--fdo_optimize=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ FDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của một tệp zip chứa cây tệp .gcda, một tệp afdo chứa hồ sơ tự động hoặc một tệp hồ sơ LLVM. Cờ này cũng chấp nhận các tệp được chỉ định dưới dạng nhãn (ví dụ: `//foo/bar:file.afdo` – bạn có thể cần thêm chỉ thị `exports_files` vào gói tương ứng) và các nhãn trỏ đến mục tiêu `fdo_profile`. Cờ này sẽ được thay thế bằng quy tắc "fdo_profile".
Thẻ:affects_outputs
--fdo_prefetch_hints=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng gợi ý tìm nạp trước bộ nhớ đệm.
Thẻ:affects_outputs
--fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
fdo_profile đại diện cho hồ sơ sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt cho các mục tiêu được tạo trong cấu hình mục tiêu. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực. Xem thêm --host_features
Các thẻ:changes_inputs
,affects_outputs
--[no]force_pic
mặc định: "false"-
Nếu được bật, tất cả các bản biên dịch C++ sẽ tạo ra mã độc lập với vị trí ("-fPIC"), các đường liên kết ưu tiên các thư viện được tạo sẵn PIC hơn các thư viện không phải PIC và các đường liên kết tạo ra các tệp thực thi độc lập với vị trí ("-pie").
Thẻ:loading_and_analysis
,affects_outputs
--host_action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình thực thi. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt>
mặc định: "opt"-
Chỉ định chế độ mà các công cụ được dùng trong quá trình tạo sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--host_conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình biên dịch C khi biên dịch các tệp nguồn C (nhưng không phải C++) trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_cpu=<a string>
mặc định: ""-
CPU lưu trữ.
Thẻ:changes_inputs
,affects_outputs
--host_cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C++ cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt đối với các mục tiêu được tạo trong cấu hình thực thi. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực.
Thẻ:changes_inputs
,affects_outputs
--host_force_python=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Ghi đè phiên bản Python cho cấu hình exec. Có thể là "PY2" hoặc "PY3".
Thẻ:loading_and_analysis
,affects_outputs
--host_linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình liên kết khi liên kết các công cụ trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu lưu trữ. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc truyền đến trình biên dịch C/C++ khi biên dịch một số tệp trong cấu hình thực thi. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--[no]incompatible_auto_exec_groups
mặc định: "false"-
Khi được bật, một nhóm thực thi sẽ tự động được tạo cho mỗi chuỗi công cụ mà một quy tắc sử dụng. Để quy tắc này hoạt động, bạn cần chỉ định tham số "toolchain" cho các thao tác của quy tắc. Để biết thêm thông tin, hãy xem https://github.com/bazelbuild/bazel/issues/17134.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_merge_genfiles_directory
mặc định: "true"-
Nếu đúng, thư mục genfiles sẽ được gộp vào thư mục bin.
Thẻ:affects_outputs
,incompatible_change
--[no]instrument_test_targets
mặc định: "false"-
Khi bật tính năng đo lường mức độ phù hợp, hãy chỉ định xem có nên cân nhắc việc đo lường các quy tắc kiểm thử hay không. Khi được đặt, các quy tắc kiểm thử do --instrumentation_filter bao gồm sẽ được đo lường. Nếu không, các quy tắc kiểm thử sẽ luôn bị loại trừ khỏi hoạt động đo lường mức độ sử dụng.
Thẻ:affects_outputs
--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
default: "-/javatests[/:],-/test/java[/:]"-
Khi tính năng đo lường mức độ phù hợp được bật, chỉ những quy tắc có tên được đưa vào bộ lọc dựa trên biểu thức chính quy đã chỉ định mới được đo lường. Thay vào đó, các quy tắc có tiền tố "-" sẽ bị loại trừ. Xin lưu ý rằng chỉ các quy tắc không phải quy tắc kiểm thử mới được đo lường, trừ phi bạn bật --instrument_test_targets.
Thẻ:affects_outputs
--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS tối thiểu tương thích với các trình mô phỏng và thiết bị mục tiêu. Nếu không chỉ định, hãy sử dụng "ios_sdk_version".
Thẻ:loses_incremental_state
--ios_multi_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo ios_application. Kết quả là một tệp nhị phân phổ quát chứa tất cả các cấu trúc được chỉ định.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]legacy_whole_archive
mặc định: "true"-
Không được dùng nữa, được thay thế bằng --incompatible_remove_legacy_whole_archive (xem https://github.com/bazelbuild/bazel/issues/7362 để biết thông tin chi tiết). Khi bật, hãy sử dụng --whole-archive cho các quy tắc cc_binary có linkshared=True và linkstatic=True hoặc "-static" trong linkopts. Điều này chỉ nhằm mục đích tương thích ngược. Một lựa chọn thay thế tốt hơn là sử dụng alwayslink=1 khi cần.
Thẻ:action_command_lines
,affects_outputs
,deprecated
--linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi liên kết.
Thẻ:action_command_lines
,affects_outputs
--ltobackendopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước phụ trợ LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--ltoindexopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước lập chỉ mục LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--macos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple macOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--memprof_profile=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng hồ sơ memprof.
Thẻ:affects_outputs
--[no]objc_debug_with_GLIBCXX
mặc định: "false"-
Nếu được đặt và chế độ biên dịch được đặt thành "dbg", hãy xác định GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC và GLIBCPP_CONCEPT_CHECKS.
Thẻ:action_command_lines
--[no]objc_enable_binary_stripping
mặc định: "false"-
Có thực hiện việc xoá ký hiệu và mã không dùng đến trên các tệp nhị phân được liên kết hay không. Thao tác xoá nhị phân sẽ được thực hiện nếu bạn chỉ định cả cờ này và --compilation_mode=opt.
Thẻ:action_command_lines
--objccopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn Objective-C/C++.
Thẻ:action_command_lines
--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền có chọn lọc đến gcc khi biên dịch một số tệp. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc chuyển đến phần phụ trợ LTO (trong --features=thin_lto) khi biên dịch một số đối tượng phụ trợ nhất định. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ. option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 sẽ thêm tuỳ chọn dòng lệnh -O0 vào dòng lệnh phụ trợ LTO của tất cả các tệp o trong //foo/ ngoại trừ bar.o.
Thẻ:action_command_lines
,affects_outputs
--platform_suffix=<a string>
mặc định: xem nội dung mô tả-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:loses_incremental_state
,affects_outputs
,loading_and_analysis
--propeller_optimize=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ Propeller để tối ưu hoá mục tiêu bản dựng.Hồ sơ Propeller phải bao gồm ít nhất một trong hai tệp, đó là hồ sơ cc và hồ sơ ld. Cờ này chấp nhận một nhãn bản dựng phải tham chiếu đến các tệp đầu vào hồ sơ cánh quạt. Ví dụ: tệp BUILD xác định nhãn, trong a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",)Bạn có thể phải thêm chỉ thị exports_files vào gói tương ứng để Bazel có thể nhìn thấy các tệp này. Bạn phải sử dụng lựa chọn này dưới dạng: --propeller_optimize=//a/b:propeller_profile
Thẻ:action_command_lines
,affects_outputs
--propeller_optimize_absolute_cc_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp cc_profile cho bản dựng được tối ưu hoá Propeller.
Thẻ:affects_outputs
--propeller_optimize_absolute_ld_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp ld_profile cho các bản dựng được tối ưu hoá bằng Propeller.
Thẻ:affects_outputs
--run_under=<a prefix in front of command>
mặc định: xem nội dung mô tả-
Tiền tố cần chèn trước các tệp thực thi cho lệnh "test" và "run". Nếu giá trị là "foo -bar" và dòng lệnh thực thi là "test_binary -baz", thì dòng lệnh cuối cùng là "foo -bar test_binary -baz".Đây cũng có thể là nhãn cho mục tiêu có thể thực thi. Một số ví dụ là: "valgrind", "strace", "strace -c", "valgrind --quiet --num-callers=20", "//package:target", "//package:target --options".
Thẻ:action_command_lines
-
Nếu đúng, các thư viện gốc có chức năng giống nhau sẽ được chia sẻ giữa các mục tiêu khác nhau
Thẻ:loading_and_analysis
,affects_outputs
--[no]stamp
mặc định: "false"-
Đóng dấu tệp nhị phân bằng ngày, tên người dùng, tên máy chủ, thông tin về không gian làm việc, v.v.
Thẻ:affects_outputs
--strip=<always, sometimes or never>
mặc định: "sometimes"-
Chỉ định có xoá các tệp nhị phân và thư viện dùng chung hay không (bằng cách sử dụng "-Wl,--strip-debug"). Giá trị mặc định của "sometimes" có nghĩa là chỉ xoá nếu --compilation_mode=fastbuild.
Thẻ:affects_outputs
--stripopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến strip khi tạo tệp nhị phân "<name>.stripped".
Thẻ:action_command_lines
,affects_outputs
--tvos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple tvOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản tvOS tối thiểu tương thích cho các trình mô phỏng và thiết bị mục tiêu. Nếu không được chỉ định, sẽ sử dụng "tvos_sdk_version".
Thẻ:loses_incremental_state
--visionos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple visionOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple watchOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản watchOS tối thiểu tương thích với các thiết bị và trình mô phỏng mục tiêu. Nếu bạn không chỉ định, hệ thống sẽ dùng "watchos_sdk_version".
Thẻ:loses_incremental_state
--xbinary_fdo=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ XbinaryFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của hồ sơ nhị phân chéo mặc định. Khi được dùng cùng với --fdo_instrument/--fdo_optimize/--fdo_profile, các lựa chọn đó sẽ luôn được ưu tiên như thể xbinary_fdo không bao giờ được chỉ định.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_licenses
mặc định: "false"-
Kiểm tra để đảm bảo rằng các ràng buộc về việc cấp phép do các gói phụ thuộc áp đặt không xung đột với các chế độ phân phối của những mục tiêu đang được tạo. Theo mặc định, giấy phép không được kiểm tra.
Thẻ:build_file_semantics
--[no]check_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi về khả năng hiển thị trong các phần phụ thuộc mục tiêu sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
--[no]desugar_for_android
mặc định: "true"- Có đơn giản hoá mã byte Java 8 trước khi dexing hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]desugar_java8_libs
mặc định: "false"-
Có đưa các thư viện Java 8 được hỗ trợ vào ứng dụng cho các thiết bị cũ hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]enforce_constraints
mặc định: "true"-
Kiểm tra các môi trường mà mỗi mục tiêu tương thích và báo cáo lỗi nếu có mục tiêu nào có các phần phụ thuộc không hỗ trợ cùng một môi trường
Thẻ:build_file_semantics
--[no]experimental_check_desugar_deps
mặc định: "true"-
Có nên kiểm tra kỹ việc khử đường cú pháp chính xác ở cấp nhị phân Android hay không.
Thẻ:eagerness_to_exit
,loading_and_analysis
,experimental
--experimental_import_deps_checking=<a string>
mặc định: xem nội dung mô tả-
Không có thao tác, chỉ giữ lại để đảm bảo khả năng tương thích ngược
Thẻ:loading_and_analysis
--experimental_one_version_enforcement=<off, warning or error>
mặc định: "TẮT"-
Khi được bật, hãy thực thi rằng quy tắc java_binary không được chứa nhiều phiên bản của cùng một tệp lớp trên đường dẫn lớp. Quy trình thực thi này có thể làm hỏng bản dựng hoặc chỉ dẫn đến cảnh báo.
Thẻ:loading_and_analysis
--experimental_strict_java_deps=<off, warn, error, strict or default>
mặc định: "default"-
Nếu đúng, hãy kiểm tra để đảm bảo rằng một mục tiêu Java khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng các phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]incompatible_check_testonly_for_output_files
mặc định: "false"-
Nếu được bật, hãy kiểm tra testonly đối với các mục tiêu tiên quyết là tệp đầu ra bằng cách tra cứu testonly của quy tắc tạo. Thao tác này khớp với việc kiểm tra khả năng hiển thị.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_check_visibility_for_toolchains
mặc định: "false"-
Nếu được bật, quy trình kiểm tra khả năng hiển thị cũng áp dụng cho các hoạt động triển khai chuỗi công cụ.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_native_android_rules
mặc định: "false"-
Nếu bạn bật chính sách này, thì việc sử dụng trực tiếp các quy tắc gốc của Android sẽ bị vô hiệu hoá. Vui lòng sử dụng các quy tắc Starlark Android từ https://github.com/bazelbuild/rules_android
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_disable_native_apple_binary_rule
mặc định: "false"-
Không có thao tác. Vẫn được giữ lại để tương thích ngược.
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_python_disable_py2
mặc định: "true"-
Nếu đúng, việc sử dụng chế độ cài đặt Python 2 sẽ gây ra lỗi. Trong đó có python_version=PY2, srcs_version=PY2 và srcs_version=PY2ONLY. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15684 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]one_version_enforcement_on_java_tests
mặc định: "true"-
Khi được bật và experimental_one_version_enforcement được đặt thành một giá trị không phải NONE, hãy thực thi một phiên bản trên các mục tiêu java_test. Bạn có thể tắt cờ này để cải thiện hiệu suất kiểm thử gia tăng, nhưng sẽ bỏ lỡ các trường hợp vi phạm tiềm ẩn đối với một phiên bản.
Thẻ:loading_and_analysis
--python_native_rules_allowlist=<a build target label>
mặc định: xem nội dung mô tả-
Danh sách cho phép (mục tiêu package_group) để sử dụng khi thực thi --incompatible_python_disallow_native_rules.
Thẻ:loading_and_analysis
--[no]strict_filesets
mặc định: "false"-
Nếu bạn bật lựa chọn này, các nhóm tệp vượt quá ranh giới gói sẽ được báo cáo là lỗi.
Thẻ:build_file_semantics
,eagerness_to_exit
--strict_proto_deps=<off, warn, error, strict or default>
mặc định: "error"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--strict_public_imports=<off, warn, error, strict or default>
mặc định: "tắt"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được dùng trong "import public" dưới dạng mục tiêu được xuất.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--[no]strict_system_includes
mặc định: "false"-
Nếu đúng, các tiêu đề được tìm thấy thông qua đường dẫn bao gồm hệ thống (-isystem) cũng phải được khai báo.
Thẻ:loading_and_analysis
,eagerness_to_exit
--target_environment=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Khai báo môi trường mục tiêu của bản dựng này. Phải là một tham chiếu nhãn đến quy tắc "environment". Nếu được chỉ định, tất cả các mục tiêu cấp cao nhất phải tương thích với môi trường này.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến đầu ra ký của bản dựng:
--apk_signing_method=<v1, v2, v1_v2 or v4>
mặc định: "v1_v2"-
Triển khai để sử dụng ký APK
Thẻ:action_command_lines
,affects_outputs
,loading_and_analysis
--[no]device_debug_entitlements
mặc định: "true"-
Nếu bạn đặt và chế độ biên dịch không phải là "opt", thì các ứng dụng objc sẽ bao gồm các quyền gỡ lỗi khi ký.
Thẻ:changes_inputs
--ios_signing_cert_name=<a string>
mặc định: xem nội dung mô tả-
Tên chứng chỉ dùng để ký iOS. Nếu bạn không đặt chính sách này, thì trình duyệt sẽ quay lại sử dụng hồ sơ cung cấp. Có thể là lựa chọn ưu tiên về danh tính của chuỗi khoá của chứng chỉ hoặc (chuỗi con) tên chung của chứng chỉ, theo trang hướng dẫn của codesign (SIGNING IDENTITIES).
Thẻ:action_command_lines
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_disallow_legacy_py_provider
mặc định: "true"-
Không có thao tác, sẽ sớm bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_sdk_frameworks_attributes
mặc định: "false"-
Nếu đúng, hãy không cho phép các thuộc tính sdk_frameworks và weak_sdk_frameworks trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_objc_alwayslink_by_default
mặc định: "false"-
Nếu đúng, hãy đặt giá trị mặc định thành true cho các thuộc tính alwayslink trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_python_disallow_native_rules
mặc định: "false"-
Khi đúng, sẽ xảy ra lỗi khi sử dụng các quy tắc py_* tích hợp; thay vào đó, bạn nên sử dụng các quy tắc rule_python. Hãy xem https://github.com/bazelbuild/bazel/issues/17773 để biết thêm thông tin và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]allow_analysis_failures
mặc định: "false"-
Nếu đúng, lỗi phân tích của mục tiêu quy tắc sẽ dẫn đến việc mục tiêu truyền một thực thể AnalysisFailureInfo chứa nội dung mô tả lỗi, thay vì dẫn đến lỗi bản dựng.
Thẻ:loading_and_analysis
,experimental
--analysis_testing_deps_limit=<an integer>
mặc định: "2000"-
Đặt số lượng tối đa các phần phụ thuộc bắc cầu thông qua một thuộc tính quy tắc có quá trình chuyển đổi cấu hình for_analysis_testing. Nếu vượt quá giới hạn này, bạn sẽ gặp lỗi về quy tắc.
Thẻ:loading_and_analysis
--[no]break_build_on_parallel_dex2oat_failure
mặc định: "false"-
Nếu đúng, các lỗi hành động dex2oat sẽ khiến bản dựng bị gián đoạn thay vì thực thi dex2oat trong thời gian chạy kiểm thử.
Thẻ:loading_and_analysis
,experimental
--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g. memory=10,30,60,100>
nhiều mục đích sử dụng được tích luỹ- Ghi đè số lượng tài nguyên mặc định cho các bài kiểm thử. Định dạng dự kiến là <resource>=<value>. Nếu một số dương duy nhất được chỉ định làm <value>, thì số đó sẽ ghi đè các tài nguyên mặc định cho tất cả các kích thước kiểm thử. Nếu bạn chỉ định 4 số được phân tách bằng dấu phẩy, thì các số này sẽ ghi đè số lượng tài nguyên cho các kích thước kiểm thử nhỏ, trung bình, lớn và rất lớn tương ứng. Các giá trị cũng có thể là HOST_RAM/HOST_CPU, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4). Các tài nguyên kiểm thử mặc định do cờ này chỉ định sẽ bị ghi đè bởi các tài nguyên rõ ràng được chỉ định trong thẻ.
--[no]experimental_android_use_parallel_dex2oat
mặc định: "false"-
Sử dụng dex2oat song song để có thể tăng tốc android_test.
Thẻ:loading_and_analysis
,host_machine_resource_optimizations
,experimental
--[no]ios_memleaks
mặc định: "false"-
Bật tính năng kiểm tra rò rỉ bộ nhớ trong các mục tiêu ios_test.
Thẻ:action_command_lines
--ios_simulator_device=<a string>
mặc định: xem nội dung mô tả-
Thiết bị cần mô phỏng khi chạy một ứng dụng iOS trong trình mô phỏng, ví dụ: "iPhone 6". Bạn có thể lấy danh sách thiết bị bằng cách chạy "xcrun simctl list devicetypes" trên máy mà trình mô phỏng sẽ chạy.
Thẻ:test_runner
--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS sẽ chạy trên trình mô phỏng khi chạy hoặc kiểm thử. Quy tắc này sẽ bị bỏ qua đối với các quy tắc ios_test nếu bạn chỉ định một thiết bị mục tiêu trong quy tắc.
Thẻ:test_runner
--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ- Chỉ định số lần chạy mỗi bài kiểm thử. Nếu bất kỳ lần thử nào trong số đó không thành công vì bất kỳ lý do nào, thì toàn bộ quy trình kiểm thử sẽ được coi là không thành công. Thông thường, giá trị bạn chỉ định chỉ là một số nguyên. Ví dụ: --runs_per_test=3 sẽ chạy tất cả các kiểm thử 3 lần. Cú pháp thay thế: regex_filter@runs_per_test. Trong đó runs_per_test là một giá trị nguyên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). Ví dụ: --runs_per_test=//foo/.*,-//foo/bar/.*@3 chạy tất cả các bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có mục nào trùng khớp, thì kiểm thử chỉ chạy một lần.
--test_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung sẽ được chèn vào môi trường trình chạy kiểm thử. Bạn có thể chỉ định các biến theo tên (trong trường hợp đó, giá trị của biến sẽ được đọc từ môi trường ứng dụng Bazel) hoặc theo cặp tên=giá trị. Bạn có thể sử dụng lựa chọn này nhiều lần để chỉ định một số biến. Chỉ được dùng bằng lệnh "bazel test".
Thẻ:test_runner
--test_timeout=<a single integer or comma-separated list of 4 integers>
mặc định: "-1"- Ghi đè các giá trị thời gian chờ kiểm thử mặc định cho thời gian chờ kiểm thử (tính bằng giây). Nếu bạn chỉ định một giá trị nguyên dương duy nhất, thì giá trị đó sẽ ghi đè tất cả danh mục. Nếu bạn chỉ định 4 số nguyên được phân tách bằng dấu phẩy, thì các số nguyên này sẽ thay thế thời gian chờ cho các khoảng thời gian ngắn, trung bình, dài và vĩnh viễn (theo thứ tự đó). Trong cả hai biểu mẫu, giá trị -1 cho biết blaze sẽ sử dụng thời gian chờ mặc định cho danh mục đó.
--[no]zip_undeclared_test_outputs
mặc định: "false"-
Nếu đúng, các đầu ra kiểm thử chưa khai báo sẽ được lưu trữ trong một tệp zip.
Thẻ:test_runner
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--[no]experimental_filter_library_jar_with_program_jar
mặc định: "false"-
Lọc ProGuard ProgramJar để xoá mọi lớp cũng có trong LibraryJar.
Thẻ:action_command_lines
,experimental
--[no]experimental_inmemory_dotd_files
mặc định: "true"-
Nếu được bật, các tệp .d C++ sẽ được truyền trực tiếp qua bộ nhớ từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_inmemory_jdeps_files
mặc định: "true"-
Nếu được bật, các tệp phần phụ thuộc (.jdeps) được tạo từ quá trình biên dịch Java sẽ được truyền qua bộ nhớ trực tiếp từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_retain_test_configuration_across_testonly
mặc định: "false"-
Khi được bật, --trim_test_configuration sẽ không cắt bớt cấu hình kiểm thử cho các quy tắc được đánh dấu testonly=1. Điều này nhằm mục đích giảm các vấn đề về xung đột hành động khi các quy tắc không phải quy tắc kiểm thử phụ thuộc vào các quy tắc cc_test. Không có hiệu lực nếu --trim_test_configuration là false.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_starlark_cc_import
mặc định: "false"-
Nếu được bật, bạn có thể sử dụng phiên bản Starlark của cc_import.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_unsupported_and_brittle_include_scanning
mặc định: "false"-
Có nên thu hẹp các đầu vào để biên dịch C/C++ bằng cách phân tích cú pháp các dòng #include từ tệp đầu vào hay không. Điều này có thể cải thiện hiệu suất và mức tăng bằng cách giảm kích thước của các cây đầu vào biên dịch. Tuy nhiên, điều này cũng có thể làm hỏng các bản dựng vì trình quét include không triển khai đầy đủ ngữ nghĩa của trình tiền xử lý C. Cụ thể, nó không hiểu các chỉ thị #include động và bỏ qua logic có điều kiện của trình tiền xử lý. Bạn tự chịu rủi ro khi sử dụng. Mọi vấn đề liên quan đến cờ hiệu này mà bạn gửi đều sẽ bị đóng.
Thẻ:loading_and_analysis
,execution
,changes_inputs
,experimental
--[no]incremental_dexing
mặc định: "true"-
Thực hiện hầu hết các thao tác dexing riêng cho từng tệp Jar.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]objc_use_dotd_pruning
mặc định: "true"-
Nếu được đặt, các tệp .d do clang phát ra sẽ được dùng để cắt bớt tập hợp các đầu vào được truyền vào quá trình biên dịch objc.
Thẻ:changes_inputs
,loading_and_analysis
--[no]process_headers_in_dependencies
mặc định: "false"-
Khi tạo một mục tiêu //a:a, hãy xử lý các tiêu đề trong tất cả các mục tiêu mà //a:a phụ thuộc vào (nếu bạn bật tính năng xử lý tiêu đề cho chuỗi công cụ).
Thẻ:execution
--[no]trim_test_configuration
mặc định: "true"-
Khi được bật, các lựa chọn liên quan đến kiểm thử sẽ bị xoá bên dưới cấp cao nhất của bản dựng. Khi cờ này đang hoạt động, các kiểm thử không thể được tạo dưới dạng các phần phụ thuộc của các quy tắc không phải kiểm thử, nhưng các thay đổi đối với các lựa chọn liên quan đến kiểm thử sẽ không khiến các quy tắc không phải kiểm thử được phân tích lại.
Thẻ:loading_and_analysis
,loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: "-.*"-
In thông tin gỡ lỗi trong quá trình phân giải chuỗi công cụ. Cờ này lấy một biểu thức chính quy, được kiểm tra dựa trên các loại chuỗi công cụ và mục tiêu cụ thể để xem mục tiêu nào cần gỡ lỗi. Bạn có thể phân tách nhiều biểu thức chính quy bằng dấu phẩy, sau đó mỗi biểu thức chính quy sẽ được kiểm tra riêng. Lưu ý: Đầu ra của cờ này rất phức tạp và có thể chỉ hữu ích cho các chuyên gia về độ phân giải chuỗi công cụ.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--flag_alias=<a 'name=value' flag alias>
nhiều mục đích sử dụng được tích luỹ-
Đặt tên viết tắt cho cờ Starlark. Hàm này nhận một cặp khoá-giá trị duy nhất dưới dạng "<key>=<value>" làm đối số.
Thẻ:changes_inputs
--[no]incompatible_default_to_explicit_init_py
mặc định: "false"-
Cờ này thay đổi hành vi mặc định để các tệp __init__.py không còn được tự động tạo trong runfiles của các mục tiêu Python nữa. Cụ thể, khi mục tiêu py_binary hoặc py_test có legacy_create_init được đặt thành "auto" (mặc định), thì mục tiêu đó sẽ được coi là false chỉ khi cờ này được đặt. Xem https://github.com/bazelbuild/bazel/issues/10076.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py2_outputs_are_suffixed
mặc định: "true"-
Nếu đúng, các mục tiêu được tạo trong cấu hình Python 2 sẽ xuất hiện trong một thư mục gốc đầu ra có hậu tố "-py2", trong khi các mục tiêu được tạo cho Python 3 sẽ xuất hiện trong một thư mục gốc không có hậu tố liên quan đến Python. Điều này có nghĩa là symlink tiện lợi `bazel-bin` sẽ trỏ đến các mục tiêu Python 3 thay vì Python 2. Nếu bật lựa chọn này, bạn cũng nên bật `--incompatible_py3_is_default`.
Các thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py3_is_default
mặc định: "true"-
Nếu đúng, các mục tiêu "py_binary" và "py_test" không đặt thuộc tính "python_version" (hoặc "default_python_version") sẽ mặc định là PY3 thay vì PY2. Nếu bạn đặt cờ này, bạn cũng nên đặt `--incompatible_py2_outputs_are_suffixed`.
Các thẻ:loading_and_analysis
,affects_outputs
,incompatible_change
--[no]incompatible_use_python_toolchains
mặc định: "true"-
Nếu bạn đặt thành true, các quy tắc Python gốc có thể thực thi sẽ sử dụng thời gian chạy Python do chuỗi công cụ Python chỉ định, thay vì thời gian chạy do các cờ cũ như --python_top cung cấp.
Thẻ:loading_and_analysis
,incompatible_change
--python_version=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Chế độ phiên bản chính của Python, có thể là "PY2" hoặc "PY3". Xin lưu ý rằng chế độ này sẽ bị ghi đè bởi các mục tiêu "py_binary" và "py_test" (ngay cả khi các mục tiêu đó không chỉ định rõ phiên bản) nên thường không có nhiều lý do để cung cấp cờ này.
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]cache_test_results
[-t
] mặc định: "auto"- Nếu được đặt thành "auto", Bazel sẽ chạy lại một kiểm thử nếu và chỉ nếu: (1) Bazel phát hiện thấy các thay đổi trong kiểm thử hoặc các phần phụ thuộc của kiểm thử, (2) kiểm thử được đánh dấu là bên ngoài, (3) nhiều lần chạy kiểm thử được yêu cầu bằng --runs_per_test hoặc(4) kiểm thử trước đó không thành công. Nếu được đặt thành "yes", Bazel sẽ lưu vào bộ nhớ đệm tất cả kết quả kiểm thử, ngoại trừ những kiểm thử được đánh dấu là bên ngoài. Nếu bạn đặt thành "no", Bazel sẽ không lưu vào bộ nhớ đệm bất kỳ kết quả kiểm thử nào.
--[no]experimental_cancel_concurrent_tests
mặc định: "false"-
Nếu đúng, Blaze sẽ huỷ các thử nghiệm đang chạy đồng thời trong lần chạy thành công đầu tiên. Tuỳ chọn này chỉ hữu ích khi kết hợp với --runs_per_test_detects_flakes.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_fetch_all_coverage_outputs
mặc định: "false"-
Nếu đúng, Bazel sẽ tìm nạp toàn bộ thư mục dữ liệu về mức độ phù hợp cho từng kiểm thử trong quá trình chạy mức độ phù hợp.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_generate_llvm_lcov
mặc định: "false"-
Nếu đúng, mức độ phù hợp cho clang sẽ tạo ra một báo cáo LCOV.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_j2objc_header_map
mặc định: "true"-
Có tạo bản đồ tiêu đề J2ObjC song song với quá trình chuyển đổi J2ObjC hay không.
Thẻ:experimental
--[no]experimental_j2objc_shorter_header_path
mặc định: "false"-
Có tạo bằng đường dẫn tiêu đề ngắn hơn hay không (sử dụng "_ios" thay vì "_j2objc").
Thẻ:affects_outputs
,experimental
--experimental_java_classpath=<off, javabuilder or bazel>
mặc định: "javabuilder"- Cho phép giảm đường dẫn lớp để biên dịch Java.
--[no]experimental_limit_android_lint_to_android_constrained_java
mặc định: "false"-
Không có thao tác, chỉ giữ lại để tương thích ngược
Thẻ:affects_outputs
,experimental
--[no]experimental_run_android_lint_on_java_rules
mặc định: "false"-
Có xác thực các nguồn java_* hay không.
Thẻ:affects_outputs
,experimental
--[no]explicit_java_test_deps
mặc định: "false"- Chỉ định rõ ràng một phần phụ thuộc vào JUnit hoặc Hamcrest trong java_test thay vì vô tình lấy từ các deps của TestRunner. Hiện tại, tính năng này chỉ hoạt động với bazel.
--host_java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java mà các công cụ được thực thi trong quá trình tạo bản dựng sử dụng.
--host_javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để truyền đến javac khi tạo các công cụ được thực thi trong quá trình tạo.
--host_jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến máy ảo Java khi tạo các công cụ được thực thi trong quá trình tạo. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của mỗi mục tiêu java_binary.
--[no]incompatible_check_sharding_support
mặc định: "true"-
Nếu đúng, Bazel sẽ không thực hiện được một kiểm thử phân đoạn nếu trình chạy kiểm thử không cho biết rằng trình chạy này hỗ trợ phân đoạn bằng cách chạm vào tệp tại đường dẫn trong TEST_SHARD_STATUS_FILE. Nếu là false, trình chạy kiểm thử không hỗ trợ phân đoạn sẽ khiến tất cả các kiểm thử chạy trong mỗi phân đoạn.
Thẻ:incompatible_change
--[no]incompatible_exclusive_test_sandboxed
mặc định: "true"-
Nếu đúng, các thử nghiệm độc quyền sẽ chạy với chiến lược hộp cát. Thêm thẻ "local" để buộc chạy thử nghiệm độc quyền cục bộ
Thẻ:incompatible_change
--[no]incompatible_strict_action_env
mặc định: "false"-
Nếu đặt là true, Bazel sẽ sử dụng một môi trường có giá trị tĩnh cho PATH và không kế thừa LD_LIBRARY_PATH. Sử dụng --action_env=ENV_VARIABLE nếu bạn muốn kế thừa các biến môi trường cụ thể từ máy khách, nhưng lưu ý rằng việc này có thể ngăn chặn việc lưu vào bộ nhớ đệm trên nhiều người dùng nếu bạn sử dụng bộ nhớ đệm dùng chung.
Thẻ:loading_and_analysis
,incompatible_change
--j2objc_translation_flags=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến công cụ J2ObjC.
--java_debug
-
Khiến máy ảo Java của một bài kiểm thử Java phải chờ kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như jdb) trước khi bắt đầu kiểm thử. Ngụ ý -test_output=streamed.
Mở rộng thành:
--test_arg=--wrapper_script_flag=--debug
--test_output=streamed
--test_strategy=exclusive
--test_timeout=9999
--nocache_test_results
--[no]java_deps
mặc định: "true"- Tạo thông tin về phần phụ thuộc (hiện tại là đường dẫn lớp thời gian biên dịch) cho mỗi mục tiêu Java.
--[no]java_header_compilation
mặc định: "true"- Biên dịch ijar trực tiếp từ nguồn.
--java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java
--java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java sẽ dùng khi tạo các tệp nhị phân Java. Nếu bạn đặt cờ này thành chuỗi trống, thì trình khởi chạy JDK sẽ được dùng. Thuộc tính "launcher" sẽ ghi đè cờ này.
--java_runtime_version=<a string>
mặc định: "local_jdk"- Phiên bản thời gian chạy Java
--javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến javac.
--jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để chuyển đến máy ảo Java. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của từng mục tiêu java_binary.
--legacy_main_dex_list_generator=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng tạo danh sách các lớp phải có trong dex chính khi biên dịch multidex cũ.
--optimizing_dexer=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng cho việc lập chỉ mục dex mà không cần phân đoạn.
--plugin=<a build target label>
nhiều mục đích sử dụng được tích luỹ- Các trình bổ trợ cần dùng trong bản dựng. Hiện hoạt động với java_plugin.
--proguard_top=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định phiên bản ProGuard sẽ dùng để xoá mã khi tạo một tệp nhị phân Java.
--proto_compiler=<a build target label>
mặc định: "@bazel_tools//tools/proto:protoc"-
Nhãn của trình biên dịch proto.
Thẻ:affects_outputs
,loading_and_analysis
--[no]proto_profile
mặc định: "true"- Có nên truyền profile_path đến trình biên dịch proto hay không.
Thẻ:affects_outputs
,loading_and_analysis
--proto_profile_path=<a build target label>
mặc định: xem nội dung mô tả-
Hồ sơ cần truyền đến trình biên dịch proto dưới dạng profile_path. Nếu bạn không đặt, nhưng --proto_profile là true (mặc định), thì sẽ suy ra đường dẫn từ --fdo_optimize.
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_cc=<a build target label>
default: "@bazel_tools//tools/proto:cc_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch proto C++
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_j2objc=<a build target label>
mặc định: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức j2objc
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_java=<a build target label>
mặc định: "@bazel_tools//tools/proto:java_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức Java
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_javalite=<a build target label>
mặc định: "@bazel_tools//tools/proto:javalite_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức JavaLite
Thẻ:affects_outputs
,loading_and_analysis
--protocopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch protobuf.
Thẻ:affects_outputs
--[no]runs_per_test_detects_flakes
mặc định: "false"- Nếu đúng, mọi phân đoạn có ít nhất một lần chạy/thử nghiệm thành công và ít nhất một lần chạy/thử nghiệm thất bại sẽ có trạng thái FLAKY.
--shell_executable=<a path>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối đến tệp thực thi shell mà Bazel sẽ dùng. Nếu bạn không đặt biến này, nhưng biến môi trường BAZEL_SH được đặt trong lệnh gọi Bazel đầu tiên (khởi động một máy chủ Bazel), thì Bazel sẽ sử dụng biến đó. Nếu bạn không đặt cả hai, Bazel sẽ sử dụng đường dẫn mặc định được mã hoá cứng, tuỳ thuộc vào hệ điều hành mà Bazel chạy trên đó (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, tất cả các hệ điều hành khác: /bin/bash). Xin lưu ý rằng việc sử dụng một trình bao không tương thích với bash có thể dẫn đến lỗi bản dựng hoặc lỗi thời gian chạy của các tệp nhị phân đã tạo.
Thẻ:loading_and_analysis
--test_arg=<a string>
nhiều mục đích sử dụng được tích luỹ- Chỉ định các lựa chọn và đối số bổ sung cần được truyền đến tệp thực thi kiểm thử. Có thể dùng nhiều lần để chỉ định một số đối số. Nếu nhiều kiểm thử được thực thi, mỗi kiểm thử sẽ nhận được các đối số giống hệt nhau. Chỉ được dùng bằng lệnh "bazel test".
--test_filter=<a string>
mặc định: xem nội dung mô tả- Chỉ định một bộ lọc để chuyển tiếp đến khung kiểm thử. Dùng để giới hạn số lượng bài kiểm thử được chạy. Xin lưu ý rằng điều này không ảnh hưởng đến những mục tiêu được tạo.
--test_result_expiration=<an integer>
mặc định: "-1"- Tuỳ chọn này không được dùng nữa và không có hiệu lực.
--[no]test_runner_fail_fast
mặc định: "false"- Chuyển tiếp lựa chọn thất bại nhanh đến trình chạy kiểm thử. Trình chạy kiểm thử sẽ dừng thực thi khi gặp lỗi đầu tiên.
--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce>
mặc định: "explicit"- Chỉ định chiến lược phân đoạn kiểm thử: "explicit" để chỉ sử dụng tính năng phân đoạn nếu có thuộc tính BUILD "shard_count". "disabled" để không bao giờ sử dụng tính năng phân đoạn kiểm thử. "forced=k" để thực thi "k" phân đoạn để kiểm thử bất kể thuộc tính BUILD "shard_count".
--tool_java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java dùng để thực thi các công cụ cần thiết trong quá trình tạo
--tool_java_runtime_version=<a string>
default: "remotejdk_11"- Phiên bản thời gian chạy Java được dùng để thực thi các công cụ trong quá trình tạo
--[no]use_ijars
mặc định: "true"- Nếu được bật, lựa chọn này sẽ khiến quá trình biên dịch Java sử dụng các tệp jar giao diện. Điều này sẽ giúp tăng tốc độ biên dịch gia tăng, nhưng thông báo lỗi có thể khác.
Các lựa chọn trợ giúp
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--help_verbosity=<long, medium or short>
mặc định: "medium"-
Chọn mức độ chi tiết của lệnh trợ giúp.
Thẻ:terminal_output
--long
[-l
]-
Hiện nội dung mô tả đầy đủ của từng lựa chọn, thay vì chỉ hiện tên.
Mở rộng thành:
--help_verbosity=long
Thẻ:terminal_output
--short
-
Chỉ hiện tên của các lựa chọn, chứ không hiện loại hoặc ý nghĩa của các lựa chọn đó.
Mở rộng thành:
--help_verbosity=short
Thẻ:terminal_output
Lựa chọn về thông tin
Kế thừa tất cả các lựa chọn từ build.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--[no]show_make_env
mặc định: "false"-
Đưa môi trường "Make" vào kết quả.
Thẻ:affects_outputs
,terminal_output
Các lựa chọn về giấy phép
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Lựa chọn cài đặt ứng dụng di động
Kế thừa tất cả các lựa chọn từ build.
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--mode=<classic, classic_internal_test_do_not_use or skylark>
mặc định: "skylark"-
Cờ không có hiệu ứng không được dùng nữa. Chỉ chế độ skylark vẫn được hỗ trợ.
Thẻ:loading_and_analysis
,execution
,incompatible_change
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--adb=<a string>
mặc định: ""-
Nhị phân adb để dùng cho lệnh "mobile-install". Nếu không chỉ định, hệ thống sẽ sử dụng SDK Android được chỉ định bằng lựa chọn dòng lệnh --android_sdk_channel (hoặc SDK mặc định nếu không chỉ định --android_sdk_channel).
Thẻ:changes_inputs
- Các tuỳ chọn kiểm soát đầu ra của lệnh:
--[no]incremental
mặc định: "false"-
Có nên thực hiện quy trình cài đặt gia tăng hay không. Nếu đúng, hãy cố gắng tránh những công việc bổ sung không cần thiết bằng cách đọc trạng thái của thiết bị mà mã sẽ được cài đặt và sử dụng thông tin đó để tránh những công việc không cần thiết. Nếu giá trị là false (mặc định), hãy luôn thực hiện quy trình cài đặt đầy đủ.
Thẻ:loading_and_analysis
--[no]split_apks
mặc định: "false"-
Có nên dùng APK phân tách để cài đặt và cập nhật ứng dụng trên thiết bị hay không. Chỉ hoạt động với các thiết bị chạy Marshmallow trở lên
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra đó, thay vì sự tồn tại của đầu ra:
--adb_arg=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các đối số bổ sung để truyền đến adb. Thường được dùng để chỉ định thiết bị cần cài đặt.
Thẻ:action_command_lines
--debug_app
-
Có chờ trình gỡ lỗi trước khi khởi động ứng dụng hay không.
Mở rộng thành:
--start=DEBUG
Các thẻ:execution
--device=<a string>
mặc định: ""-
Số sê-ri thiết bị adb. Nếu bạn không chỉ định, hệ thống sẽ sử dụng thiết bị đầu tiên.
Thẻ:action_command_lines
--start=<no, cold, warm or debug>
mặc định: "NO"-
Cách khởi động ứng dụng sau khi cài đặt. Đặt thành WARM để giữ lại và khôi phục trạng thái ứng dụng khi cài đặt gia tăng.
Thẻ:execution
--start_app
-
Có khởi động ứng dụng sau khi cài đặt hay không.
Mở rộng thành:
--start=COLD
Thẻ:execution
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--incremental_install_verbosity=<a string>
mặc định: ""-
Độ chi tiết cho chế độ cài đặt gia tăng. Đặt thành 1 để ghi nhật ký gỡ lỗi.
Thẻ:bazel_monitoring
Lựa chọn về bản sửa đổi
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của lệnh con "mod":
--base_module=<"<root>" for the root module; <module>@<version> for a specific version of a module; <module> for all versions of a module; @<name> for a repo with the given apparent name; or @@<name> for a repo with the given canonical name>
mặc định: "<root>"-
Chỉ định một mô-đun mà theo đó các kho lưu trữ đích được chỉ định sẽ được diễn giải.
Thẻ:terminal_output
--charset=<utf8 or ascii>
mặc định: "utf8"-
Chọn bộ ký tự để sử dụng cho cây. Chỉ ảnh hưởng đến đầu ra văn bản. Các giá trị hợp lệ là "utf8" hoặc "ascii". Giá trị mặc định là "utf8"
Thẻ:terminal_output
--[no]cycles
mặc định: "false"-
Chỉ ra các chu kỳ phụ thuộc bên trong cây được hiển thị, thường bị bỏ qua theo mặc định.
Thẻ:terminal_output
--depth=<an integer>
mặc định: "-1"-
Độ sâu hiển thị tối đa của cây phần phụ thuộc. Độ sâu 1 cho thấy các phần phụ thuộc trực tiếp, chẳng hạn. Đối với tree, path và all_paths, giá trị mặc định là Integer.MAX_VALUE, còn đối với deps và explain, giá trị mặc định là 1 (chỉ hiển thị các deps trực tiếp của gốc ngoài các nút lá mục tiêu và nút mẹ của chúng).
Thẻ:terminal_output
--extension_filter=<a comma-separated list of <extension>s>
mặc định: xem nội dung mô tả-
Chỉ hiển thị các cách sử dụng của những tiện ích mô-đun này và các kho lưu trữ do chúng tạo ra nếu bạn đặt các cờ tương ứng. Nếu được đặt, biểu đồ kết quả sẽ chỉ bao gồm những đường dẫn có chứa các mô-đun sử dụng các tiện ích được chỉ định. Danh sách trống sẽ tắt bộ lọc, tức là chỉ định tất cả các tiện ích có thể có.
Thẻ:terminal_output
--extension_info=<hidden, usages, repos or all>
mặc định: "hidden"-
Chỉ định mức độ chi tiết về việc sử dụng tiện ích cần đưa vào kết quả truy vấn. "Usages" (Mức sử dụng) sẽ chỉ cho biết tên của các tiện ích, "repos" (kho lưu trữ) cũng sẽ bao gồm các kho lưu trữ được nhập bằng use_repo và "all" (tất cả) cũng sẽ cho biết các kho lưu trữ khác do tiện ích tạo.
Thẻ:terminal_output
--extension_usages=<a comma-separated list of <module>s>
mặc định: ""-
Chỉ định các mô-đun có mức sử dụng tiện ích sẽ xuất hiện trong truy vấn show_extension.
Thẻ:terminal_output
--from=<a comma-separated list of <module>s>
mặc định: "<root>"-
Các mô-đun mà từ đó truy vấn biểu đồ phần phụ thuộc sẽ xuất hiện. Kiểm tra nội dung mô tả của từng truy vấn để biết ngữ nghĩa chính xác. Mặc định là <root>.
Thẻ:terminal_output
--[no]include_builtin
mặc định: "false"-
Đưa các mô-đun tích hợp vào biểu đồ phần phụ thuộc. Tắt theo mặc định vì khá ồn.
Thẻ:terminal_output
--[no]include_unused
mặc định: "false"-
Các truy vấn cũng sẽ xem xét và hiển thị các mô-đun không dùng đến, không có trong biểu đồ phân giải mô-đun sau khi chọn (do quy tắc Chọn phiên bản tối thiểu hoặc quy tắc ghi đè). Điều này có thể có những tác động khác nhau đối với từng loại truy vấn, tức là bao gồm các đường dẫn mới trong lệnh all_paths hoặc các thành phần phụ thuộc bổ sung trong lệnh explain.
Thẻ:terminal_output
--output=<text, json or graph>
mặc định: "text"-
Định dạng mà kết quả truy vấn sẽ được in. Các giá trị được phép cho truy vấn là: text, json, graph
Thẻ:terminal_output
--[no]verbose
mặc định: "false"-
Các truy vấn cũng sẽ cho biết lý do tại sao các mô-đun được phân giải thành phiên bản hiện tại (nếu có thay đổi). Giá trị mặc định là true chỉ cho truy vấn giải thích.
Thẻ:terminal_output
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
Các lựa chọn về print_action
Kế thừa tất cả các lựa chọn từ build.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn khác, không được phân loại theo cách khác.:
--print_action_mnemonics=<a string>
nhiều mục đích sử dụng được tích luỹ- Liệt kê các mã ghi nhớ để lọc dữ liệu print_action, không có quá trình lọc nào diễn ra khi bạn để trống.
Lựa chọn truy vấn
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]keep_going
[-k
] mặc định: "false"-
Tiếp tục càng nhiều càng tốt sau khi xảy ra lỗi. Mặc dù không thể phân tích mục tiêu không thành công và những mục tiêu phụ thuộc vào mục tiêu đó, nhưng bạn có thể phân tích các điều kiện tiên quyết khác của những mục tiêu này.
Thẻ:eagerness_to_exit
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của truy vấn:
--aspect_deps=<off, conservative or precise>
mặc định: "thận trọng"-
Cách giải quyết các phần phụ thuộc về khía cạnh khi định dạng đầu ra là một trong các định dạng {xml,proto,record}. "off" có nghĩa là không có sự phụ thuộc nào về khía cạnh được giải quyết, "conservative" (mặc định) có nghĩa là tất cả các sự phụ thuộc đã khai báo về khía cạnh đều được thêm vào bất kể chúng có được cung cấp lớp quy tắc về sự phụ thuộc trực tiếp hay không, "precise" có nghĩa là chỉ những khía cạnh có thể hoạt động được thêm vào khi có lớp quy tắc về sự phụ thuộc trực tiếp. Xin lưu ý rằng chế độ chính xác yêu cầu tải các gói khác để đánh giá một mục tiêu duy nhất, do đó, chế độ này sẽ chậm hơn các chế độ khác. Ngoài ra, hãy lưu ý rằng ngay cả chế độ chính xác cũng không hoàn toàn chính xác: quyết định có tính toán một khía cạnh hay không được quyết định trong giai đoạn phân tích, không chạy trong "bazel query".
Thẻ:build_file_semantics
--[no]consistent_labels
mặc định: "false"-
Nếu được bật, mọi lệnh truy vấn sẽ phát ra nhãn như thể bằng hàm <code>str</code> Starlark được áp dụng cho một thực thể <code>Label</code>. Điều này rất hữu ích cho những công cụ cần so khớp đầu ra của các lệnh truy vấn và/hoặc nhãn khác nhau do các quy tắc phát ra. Nếu không được bật, các trình định dạng đầu ra có thể phát ra tên kho lưu trữ rõ ràng (tương ứng với kho lưu trữ chính) thay vì để đầu ra dễ đọc hơn.
Thẻ:terminal_output
--[no]experimental_explicit_aspects
mặc định: "false"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]experimental_graphless_query
mặc định: "auto"-
Nếu đúng, hãy sử dụng một phương thức triển khai Truy vấn không tạo bản sao của biểu đồ. Cách triển khai mới chỉ hỗ trợ --order_output=no, cũng như chỉ một nhóm nhỏ các trình định dạng đầu ra.
Thẻ:build_file_semantics
,eagerness_to_exit
--graph:conditional_edges_limit=<an integer>
mặc định: "4"-
Số lượng nhãn điều kiện tối đa cần hiển thị. -1 nghĩa là không có đoạn văn bị cắt và 0 nghĩa là không có chú giải. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--[no]graph:factored
mặc định: "true"-
Nếu đúng, thì biểu đồ sẽ được phát ra "được phân tích", tức là các nút tương đương về mặt cấu trúc liên kết sẽ được hợp nhất với nhau và nhãn của chúng sẽ được nối. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--graph:node_limit=<an integer>
mặc định: "512"-
Độ dài tối đa của chuỗi nhãn cho một nút biểu đồ trong đầu ra. Các nhãn dài hơn sẽ bị cắt ngắn; -1 có nghĩa là không bị cắt ngắn. Lựa chọn này chỉ áp dụng cho --output=graph.
Thẻ:terminal_output
--[no]implicit_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc ngầm sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Phần phụ thuộc ngầm ẩn là phần phụ thuộc không được chỉ định rõ ràng trong tệp BUILD nhưng được bazel thêm vào. Đối với cquery, lựa chọn này kiểm soát việc lọc các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--[no]include_aspects
mặc định: "true"-
aquery, cquery: có đưa các thao tác do khía cạnh tạo vào đầu ra hay không. query: no-op (các khía cạnh luôn được tuân theo).
Thẻ:terminal_output
--[no]incompatible_lexicographical_output
mặc định: "true"-
Nếu bạn đặt tuỳ chọn này, thì lệnh sort --order_output=auto sẽ sắp xếp đầu ra theo thứ tự từ điển.
Thẻ:terminal_output
,incompatible_change
--[no]incompatible_package_group_includes_double_slash
mặc định: "true"-
Nếu được bật, khi xuất thuộc tính "packages" của package_group, dấu "//" ở đầu sẽ không bị bỏ qua.
Thẻ:terminal_output
,incompatible_change
--[no]infer_universe_scope
mặc định: "false"-
Nếu được đặt và --universe_scope không được đặt, thì giá trị của --universe_scope sẽ được suy luận là danh sách các mẫu mục tiêu duy nhất trong biểu thức truy vấn. Xin lưu ý rằng giá trị --universe_scope được suy luận cho một biểu thức truy vấn sử dụng các hàm có phạm vi toàn cầu (ví dụ: "allrdeps") có thể không phải là giá trị bạn muốn, vì vậy, bạn chỉ nên sử dụng lựa chọn này nếu biết mình đang làm gì. Hãy xem https://bazel.build/reference/query#sky-query để biết thông tin chi tiết và ví dụ. Nếu bạn đặt --universe_scope, thì giá trị của lựa chọn này sẽ bị bỏ qua. Lưu ý: lựa chọn này chỉ áp dụng cho "query" (tức là không phải "cquery").
Thẻ:loading_and_analysis
--[no]line_terminator_null
mặc định: "false"-
Mỗi định dạng có kết thúc bằng \0 thay vì dòng mới hay không.
Thẻ:terminal_output
--[no]nodep_deps
mặc định: "true"-
Nếu được bật, các phần phụ thuộc từ thuộc tính "nodep" sẽ được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một ví dụ phổ biến về thuộc tính "nodep" là "visibility". Chạy và phân tích cú pháp đầu ra của "info build-language" để tìm hiểu về tất cả các thuộc tính "nodep" trong ngôn ngữ bản dựng.
Thẻ:build_file_semantics
--noorder_results
-
Đưa ra kết quả theo thứ tự phụ thuộc (mặc định) hoặc không theo thứ tự. Đầu ra không theo thứ tự nhanh hơn nhưng chỉ được hỗ trợ khi --output không phải là minrank, maxrank hoặc graph.
Mở rộng thành:
--order_output=no
Thẻ:terminal_output
--null
-
Mỗi định dạng có kết thúc bằng \0 thay vì dòng mới hay không.
Mở rộng thành:
--line_terminator_null=true
Thẻ:terminal_output
--order_output=<no, deps, auto or full>
mặc định: "auto"-
Đưa ra kết quả không theo thứ tự (no), theo thứ tự phụ thuộc (deps) hoặc theo thứ tự đầy đủ (full). Giá trị mặc định là "auto", nghĩa là kết quả được xuất theo thứ tự phụ thuộc hoặc theo thứ tự đầy đủ, tuỳ thuộc vào trình định dạng đầu ra (theo thứ tự phụ thuộc đối với proto, minrank, maxrank và graph, theo thứ tự đầy đủ đối với tất cả các trình định dạng khác). Khi đầu ra được sắp xếp đầy đủ, các nút sẽ được in theo thứ tự hoàn toàn xác định (tổng). Trước tiên, tất cả các nút được sắp xếp theo thứ tự bảng chữ cái. Sau đó, mỗi nút trong danh sách được dùng làm điểm bắt đầu của một tìm kiếm theo chiều sâu sau thứ tự, trong đó các cạnh đi đến các nút chưa được truy cập sẽ được duyệt theo thứ tự bảng chữ cái của các nút kế thừa. Cuối cùng, các nút được in theo thứ tự ngược lại với thứ tự mà chúng được truy cập.
Thẻ:terminal_output
--order_results
-
Đưa ra kết quả theo thứ tự phụ thuộc (mặc định) hoặc không theo thứ tự. Đầu ra không theo thứ tự nhanh hơn nhưng chỉ được hỗ trợ khi --output không phải là minrank, maxrank hoặc graph.
Mở rộng thành:
--order_output=auto
Thẻ:terminal_output
--output=<a string>
mặc định: "label"-
Định dạng mà kết quả truy vấn sẽ được in. Các giá trị được phép cho truy vấn là: build, graph, streamed_jsonproto, label, label_kind, location, maxrank, minrank, package, proto, streamed_proto, xml.
Thẻ:terminal_output
--[no]proto:default_values
mặc định: "true"-
Nếu đúng, các thuộc tính có giá trị không được chỉ định rõ ràng trong tệp BUILD sẽ được đưa vào; nếu không, các thuộc tính đó sẽ bị bỏ qua. Tuỳ chọn này áp dụng cho --output=proto
Thẻ:terminal_output
--[no]proto:definition_stack
mặc định: "false"-
Điền vào trường proto definition_stack, ghi lại cho mỗi phiên bản quy tắc ngăn xếp lệnh gọi Starlark tại thời điểm xác định lớp của quy tắc.
Thẻ:terminal_output
--[no]proto:flatten_selects
mặc định: "true"-
Nếu được bật, các thuộc tính có thể định cấu hình do select() tạo sẽ được làm phẳng. Đối với các loại danh sách, biểu diễn được đơn giản hoá là một danh sách chứa chính xác một lần mỗi giá trị của bản đồ chọn. Các loại vô hướng được làm phẳng thành giá trị rỗng.
Thẻ:build_file_semantics
--[no]proto:include_attribute_source_aspects
mặc định: "false"-
Điền trường proto source_aspect_name của mỗi Thuộc tính bằng khía cạnh nguồn mà thuộc tính đó đến từ (chuỗi trống nếu không).
Thẻ:terminal_output
--[no]proto:include_synthetic_attribute_hash
mặc định: "false"-
Có tính toán và điền sẵn thuộc tính $internal_attr_hash hay không.
Thẻ:terminal_output
--[no]proto:instantiation_stack
mặc định: "false"-
Điền vào ngăn xếp lệnh gọi khởi tạo của từng quy tắc. Xin lưu ý rằng điều này yêu cầu phải có ngăn xếp
Thẻ:terminal_output
--[no]proto:locations
mặc định: "true"-
Có xuất thông tin vị trí trong đầu ra proto hay không.
Thẻ:terminal_output
--proto:output_rule_attrs=<comma-separated list of options>
mặc định: "all"-
Danh sách thuộc tính được phân tách bằng dấu phẩy để đưa vào đầu ra. Mặc định là tất cả các thuộc tính. Đặt thành chuỗi trống để không xuất bất kỳ thuộc tính nào. Tuỳ chọn này áp dụng cho --output=proto.
Thẻ:terminal_output
--[no]proto:rule_classes
mặc định: "false"-
Điền vào trường rule_class_key của mỗi quy tắc; và đối với quy tắc đầu tiên có một rule_class_key nhất định, hãy điền vào trường proto rule_class_info của quy tắc đó. Trường rule_class_key xác định duy nhất một lớp quy tắc và trường rule_class_info là một định nghĩa API lớp quy tắc theo định dạng Stardoc.
Thẻ:terminal_output
--[no]proto:rule_inputs_and_outputs
mặc định: "true"-
Có điền sẵn các trường rule_input và rule_output hay không.
Thẻ:terminal_output
--query_file=<a string>
mặc định: ""-
Nếu được đặt, truy vấn sẽ đọc truy vấn từ tệp có tên ở đây, thay vì trên dòng lệnh. Đã xảy ra lỗi khi chỉ định một tệp ở đây cũng như một truy vấn dòng lệnh.
Thẻ:changes_inputs
--[no]relative_locations
mặc định: "false"-
Nếu đúng, vị trí của các tệp BUILD trong đầu ra xml và proto sẽ là tương đối. Theo mặc định, đầu ra vị trí là một đường dẫn tuyệt đối và sẽ không nhất quán trên các máy. Bạn có thể đặt tuỳ chọn này thành true để có kết quả nhất quán trên các máy.
Thẻ:terminal_output
--[no]strict_test_suite
mặc định: "false"-
Nếu đúng, biểu thức tests() sẽ đưa ra lỗi nếu gặp phải một test_suite chứa các mục tiêu không phải là mục tiêu kiểm thử.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]tool_deps
mặc định: "true"-
Truy vấn: Nếu bị vô hiệu hoá, các phần phụ thuộc vào "cấu hình thực thi" sẽ không được đưa vào biểu đồ phần phụ thuộc mà truy vấn hoạt động. Một cạnh phần phụ thuộc "cấu hình exec", chẳng hạn như cạnh từ bất kỳ quy tắc "proto_library" nào đến Trình biên dịch giao thức, thường trỏ đến một công cụ được thực thi trong quá trình tạo thay vì một phần của cùng một chương trình "target".
Cquery: Nếu bị vô hiệu hoá, sẽ lọc ra tất cả các mục tiêu đã định cấu hình vượt qua quá trình chuyển đổi thực thi từ mục tiêu cấp cao nhất đã phát hiện ra mục tiêu đã định cấu hình này. Điều này có nghĩa là nếu mục tiêu cấp cao nhất nằm trong cấu hình mục tiêu, thì chỉ những mục tiêu được định cấu hình cũng nằm trong cấu hình mục tiêu mới được trả về. Nếu mục tiêu cấp cao nhất nằm trong cấu hình exec, thì chỉ các mục tiêu được định cấu hình exec mới được trả về. Lựa chọn này SẼ KHÔNG loại trừ các chuỗi công cụ đã phân giải.
Thẻ:build_file_semantics
--universe_scope=<comma-separated list of options>
mặc định: ""-
Một nhóm mẫu mục tiêu được phân tách bằng dấu phẩy (bổ sung và trừ). Truy vấn có thể được thực hiện trong vũ trụ được xác định bằng bao đóng bắc cầu của các mục tiêu được chỉ định. Lựa chọn này được dùng cho các lệnh truy vấn và cquery.
Đối với cquery, đầu vào cho lựa chọn này là các mục tiêu mà tất cả câu trả lời được xây dựng theo đó, vì vậy, lựa chọn này có thể ảnh hưởng đến các cấu hình và quá trình chuyển đổi. Nếu bạn không chỉ định lựa chọn này, thì các mục tiêu cấp cao nhất sẽ được giả định là các mục tiêu được phân tích cú pháp từ biểu thức truy vấn. Lưu ý: Đối với cquery, việc không chỉ định lựa chọn này có thể khiến bản dựng bị gián đoạn nếu các mục tiêu được phân tích cú pháp từ biểu thức truy vấn không thể tạo được bằng các lựa chọn cấp cao nhất.
Thẻ:loading_and_analysis
--[no]xml:default_values
mặc định: "false"-
Nếu đúng, các thuộc tính quy tắc có giá trị không được chỉ định rõ ràng trong tệp BUILD sẽ được in; nếu không, các thuộc tính đó sẽ bị bỏ qua.
Thẻ:terminal_output
--[no]xml:line_numbers
mặc định: "true"-
Nếu đúng, đầu ra XML sẽ chứa số dòng. Việc tắt lựa chọn này có thể giúp bạn dễ đọc các phần khác biệt hơn. Lựa chọn này chỉ áp dụng cho --output=xml.
Thẻ:terminal_output
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của nhật ký:
--experimental_repository_resolved_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi giá trị Starlark bằng thông tin đã phân giải của tất cả các quy tắc kho lưu trữ Starlark đã được thực thi.
Thẻ:affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
Lựa chọn chạy
Kế thừa tất cả các lựa chọn từ build.
- Các lựa chọn xuất hiện trước lệnh và được ứng dụng phân tích cú pháp:
--[no]portable_paths
mặc định: "false"-
Nếu đúng, hãy thêm các đường dẫn cần thay thế trong ExecRequest để tạo ra các đường dẫn có thể di chuyển.
Thẻ:affects_outputs
--[no]run
mặc định: "true"-
Nếu là false, hãy bỏ qua việc chạy dòng lệnh được tạo cho mục tiêu đã tạo. Xin lưu ý rằng cờ này sẽ bị bỏ qua đối với tất cả các bản dựng --script_path.
Thẻ:affects_outputs
--run_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, chứ không phải sự tồn tại của đầu ra:
--script_path=<a path>
mặc định: xem nội dung mô tả-
Nếu được đặt, hãy ghi một tập lệnh shell vào tệp đã cho để gọi mục tiêu. Nếu bạn đặt lựa chọn này, mục tiêu sẽ không chạy từ bazel. Sử dụng "bazel run --script_path=foo //foo && ./foo" để gọi mục tiêu "//foo". Thao tác này khác với "bazel run //foo" ở chỗ khoá bazel được phát hành và tệp thực thi được kết nối với stdin của thiết bị đầu cuối.
Thẻ:affects_outputs
,execution
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Các lựa chọn tắt
- Các tuỳ chọn kiểm soát đầu ra của lệnh:
--iff_heap_size_greater_than=<an integer>
mặc định: "0"-
Nếu khác 0, thì quá trình tắt sẽ chỉ tắt máy chủ nếu tổng bộ nhớ (tính bằng MB) mà JVM sử dụng vượt quá giá trị này.
Thẻ:loses_incremental_state
,eagerness_to_exit
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Tuỳ chọn đồng bộ hoá
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]configure
mặc định: "False"-
Chỉ đồng bộ hoá những kho lưu trữ được đánh dấu là "configure" (định cấu hình) cho mục đích định cấu hình hệ thống.
Thẻ:changes_inputs
--[no]keep_going
[-k
] mặc định: "false"-
Tiếp tục càng nhiều càng tốt sau khi xảy ra lỗi. Mặc dù không thể phân tích mục tiêu không thành công và những mục tiêu phụ thuộc vào mục tiêu đó, nhưng bạn có thể phân tích các điều kiện tiên quyết khác của những mục tiêu này.
Thẻ:eagerness_to_exit
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
--only=<a string>
nhiều mục đích sử dụng được tích luỹ-
Nếu bạn chọn chế độ này, chỉ đồng bộ hoá các kho lưu trữ được chỉ định bằng chế độ này. Vẫn coi tất cả (hoặc tất cả các tệp có cấu hình tương tự, nếu bạn cung cấp --configure) là đã lỗi thời.
Thẻ:changes_inputs
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--experimental_repository_resolved_file=<a string>
mặc định: ""-
Nếu không trống, hãy ghi giá trị Starlark bằng thông tin đã phân giải của tất cả các quy tắc kho lưu trữ Starlark đã được thực thi.
Thẻ:affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
Lựa chọn kiểm thử
Kế thừa tất cả các lựa chọn từ build.
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--[no]print_relative_test_log_paths
mặc định: "false"-
Nếu đúng, khi in đường dẫn đến nhật ký kiểm thử, hãy sử dụng đường dẫn tương đối tận dụng symlink tiện lợi "testlogs". Lưu ý – Lệnh gọi "build"/"test"/v.v. tiếp theo với một cấu hình khác có thể khiến đích của symlink này thay đổi, khiến đường dẫn đã in trước đó không còn hữu ích nữa.
Thẻ:affects_outputs
--[no]test_verbose_timeout_warnings
mặc định: "false"-
Nếu đúng, hãy in các cảnh báo bổ sung khi thời gian thực tế chạy thử nghiệm không khớp với thời gian chờ do thử nghiệm xác định (dù là ngầm định hay rõ ràng).
Thẻ:affects_outputs
--[no]verbose_test_summary
mặc định: "true"-
Nếu đúng, hãy in thêm thông tin (thời gian, số lần chạy không thành công, v.v.) trong bản tóm tắt kiểm thử.
Thẻ:affects_outputs
Lựa chọn về nhà cung cấp
Kế thừa tất cả các lựa chọn từ test.
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]keep_going
[-k
] mặc định: "false"-
Tiếp tục càng nhiều càng tốt sau khi xảy ra lỗi. Mặc dù không thể phân tích mục tiêu không thành công và những mục tiêu phụ thuộc vào mục tiêu đó, nhưng bạn có thể phân tích các điều kiện tiên quyết khác của những mục tiêu này.
Thẻ:eagerness_to_exit
--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5">
mặc định: "auto"-
Số lượng luồng song song cần dùng cho giai đoạn tải/phân tích. Nhận một số nguyên hoặc từ khoá ("auto", "HOST_CPUS", "HOST_RAM"), có thể theo sau là một thao tác ([-|*]<float>) chẳng hạn như "auto", "HOST_CPUS*.5". "auto" đặt một giá trị mặc định hợp lý dựa trên tài nguyên máy chủ lưu trữ. Phải ít nhất là 1.
Thẻ:bazel_internal_configuration
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_config_setting_private_default_visibility
mặc định: "false"-
Nếu incompatible_enforce_config_setting_visibility=false, thì đây là một noop. Nếu cờ này là false, mọi config_setting không có thuộc tính hiển thị rõ ràng đều là //visibility:public. Nếu cờ này là true, config_setting sẽ tuân theo cùng một logic hiển thị như tất cả các quy tắc khác. Xem tại https://github.com/bazelbuild/bazel/issues/12933.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enforce_config_setting_visibility
mặc định: "true"-
Nếu đúng, hãy thực thi các hạn chế về khả năng hiển thị config_setting. Nếu là false, mọi config_setting đều hiển thị cho mọi mục tiêu. Xem tại https://github.com/bazelbuild/bazel/issues/12932.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
- Các lựa chọn liên quan đến đầu ra và ngữ nghĩa của Bzlmod:
--repo=<a string>
nhiều mục đích sử dụng được tích luỹ-
Chỉ những nhà cung cấp kho lưu trữ được chỉ định, có thể là "@apparent_repo_name" hoặc "@@canonical_repo_name". Bạn có thể đặt tuỳ chọn này nhiều lần
Thẻ:changes_inputs
- Các lựa chọn khác, không được phân loại theo cách khác.:
--deleted_packages=<comma-separated list of package names>
nhiều mục đích sử dụng được tích luỹ- Danh sách tên các gói được phân tách bằng dấu phẩy mà hệ thống xây dựng sẽ coi là không tồn tại, ngay cả khi chúng xuất hiện ở đâu đó trên đường dẫn gói. Sử dụng lựa chọn này khi xoá gói con "x/y" của gói hiện có "x". Ví dụ: sau khi bạn xoá x/y/BUILD trong ứng dụng, hệ thống bản dựng có thể báo lỗi nếu gặp nhãn "//x:y/z" nếu nhãn đó vẫn được cung cấp bởi một mục nhập package_path khác. Việc chỉ định --deleted_packages x/y sẽ tránh được vấn đề này.
--[no]fetch
mặc định: "true"- Cho phép lệnh tìm nạp các phần phụ thuộc bên ngoài. Nếu được đặt thành false, lệnh sẽ sử dụng mọi phiên bản đã lưu vào bộ nhớ đệm của phần phụ thuộc và nếu không có phiên bản nào, lệnh sẽ không thành công.
--package_path=<colon-separated list of options>
mặc định: "%workspace%"- Danh sách được phân tách bằng dấu hai chấm về vị trí tìm kiếm các gói. Các phần tử bắt đầu bằng "%workspace%" có liên quan đến không gian làm việc bao quanh. Nếu bạn bỏ qua hoặc để trống, giá trị mặc định sẽ là đầu ra của "bazel info default-package-path".
--[no]show_loading_progress
mặc định: "true"- Nếu được bật, Bazel sẽ in thông báo "Đang tải gói:".
- Các lựa chọn kiểm soát quá trình thực thi bản dựng:
--[no]experimental_inprocess_symlink_creation
mặc định: "true"- Có thực hiện các lệnh gọi trực tiếp đến hệ thống tệp để tạo cây liên kết tượng trưng hay không thay vì uỷ quyền cho một quy trình trợ giúp.
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_persistent_aar_extractor
mặc định: "false"-
Bật trình trích xuất aar liên tục bằng cách sử dụng các worker.
Thẻ:execution
,experimental
--[no]experimental_remotable_source_manifests
mặc định: "false"-
Có nên thực hiện các thao tác trên tệp kê khai nguồn từ xa hay không
Thẻ:loading_and_analysis
,execution
,experimental
--[no]experimental_split_coverage_postprocessing
mặc định: "false"-
Nếu đúng, Bazel sẽ chạy quy trình xử lý hậu kỳ về mức độ phù hợp cho kiểm thử trong một quy trình tạo mới.
Thẻ:execution
,experimental
--[no]experimental_strict_fileset_output
mặc định: "false"-
Nếu bạn bật lựa chọn này, thì các nhóm tệp sẽ coi tất cả các cấu phần phần mềm đầu ra là tệp thông thường. Chúng sẽ không đi qua các thư mục hoặc nhạy cảm với các đường liên kết tượng trưng.
Thẻ:execution
,experimental
--[no]incompatible_modify_execution_info_additive
mặc định: "false"-
Khi được bật, việc truyền nhiều cờ --modify_execution_info sẽ có tính cộng dồn. Khi bị vô hiệu hoá, hệ thống chỉ xem xét cờ cuối cùng.
Thẻ:execution
,affects_outputs
,loading_and_analysis
,incompatible_change
--modify_execution_info=<regex=[+-]key,regex=[+-]key,...>
nhiều mục đích sử dụng được tích luỹ-
Thêm hoặc xoá các khoá khỏi thông tin thực thi của một thao tác dựa trên từ viết tắt của thao tác. Chỉ áp dụng cho những thao tác hỗ trợ thông tin thực thi. Nhiều thao tác phổ biến hỗ trợ thông tin thực thi, ví dụ: Genrule, CppCompile, Javac, StarlarkAction, TestRunner. Khi chỉ định nhiều giá trị, thứ tự sẽ quan trọng vì nhiều biểu thức chính quy có thể áp dụng cho cùng một mã nhớ.
Cú pháp: "regex=[+-]key,regex=[+-]key,...".
Ví dụ: ".*=+x,.*=-y,.*=+z" sẽ thêm "x" và "z" vào, đồng thời xoá "y" khỏi thông tin thực thi cho tất cả các thao tác.
"Genrule=+requires-x" sẽ thêm "requires-x" vào thông tin thực thi cho tất cả các thao tác Genrule.
"(?!Genrule).*=-requires-x" sẽ xoá "requires-x" khỏi thông tin thực thi cho tất cả các thao tác không phải Genrule.
Thẻ:execution
,affects_outputs
,loading_and_analysis
--persistent_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_android_dex_desugar
--strategy=Desugar=worker
--strategy=DexBuilder=worker
Thẻ:host_machine_resource_optimizations
,execution
--persistent_android_resource_processor
-
Bật trình xử lý tài nguyên Android liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--internal_persistent_busybox_tools
--strategy=AaptPackage=worker
--strategy=AndroidResourceParser=worker
--strategy=AndroidResourceValidator=worker
--strategy=AndroidResourceCompiler=worker
--strategy=RClassGenerator=worker
--strategy=AndroidResourceLink=worker
--strategy=AndroidAapt2=worker
--strategy=AndroidAssetMerger=worker
--strategy=AndroidResourceMerger=worker
--strategy=AndroidCompiledResourceMerger=worker
--strategy=ManifestMerger=worker
--strategy=AndroidManifestMerger=worker
--strategy=Aapt2Optimize=worker
--strategy=AARGenerator=worker
--strategy=ProcessDatabinding=worker
--strategy=GenerateDataBindingBaseClasses=worker
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_dex_desugar
-
Cho phép các thao tác dex và desugar Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_dex_desugar
--internal_persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_resource_processor
-
Bật trình xử lý tài nguyên Android được ghép kênh liên tục bằng cách sử dụng các worker.
Mở rộng thành:
--persistent_android_resource_processor
--modify_execution_info=AaptPackage=+supports-multiplex-workers
--modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
--modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
--modify_execution_info=RClassGenerator=+supports-multiplex-workers
--modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
--modify_execution_info=AndroidAapt2=+supports-multiplex-workers
--modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
--modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
--modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
--modify_execution_info=ManifestMerger=+supports-multiplex-workers
--modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
--modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
--modify_execution_info=AARGenerator=+supports-multiplex-workers
Thẻ
:host_machine_resource_optimizations
,execution
--persistent_multiplex_android_tools
-
Bật các công cụ Android liên tục và được ghép kênh (dexing, desugaring, xử lý tài nguyên).
Mở rộng thành:
--internal_persistent_multiplex_busybox_tools
--persistent_multiplex_android_resource_processor
--persistent_multiplex_android_dex_desugar
Thẻ:host_machine_resource_optimizations
,execution
--[no]use_target_platform_for_tests
mặc định: "false"-
Nếu đúng, Bazel sẽ sử dụng nền tảng mục tiêu để chạy các kiểm thử thay vì nhóm thực thi kiểm thử.
Thẻ:execution
- Các lựa chọn định cấu hình chuỗi công cụ dùng để thực thi hành động:
--android_compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch mục tiêu Android.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_manifest_merger=<legacy, android or force_android>
mặc định: "android"-
Chọn công cụ sáp nhập tệp kê khai để dùng cho các quy tắc android_binary. Cờ giúp chuyển đổi sang công cụ sáp nhập tệp kê khai Android từ công cụ sáp nhập cũ.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--android_platforms=<a build target label>
mặc định: ""-
Đặt các nền tảng mà mục tiêu android_binary sử dụng. Nếu bạn chỉ định nhiều nền tảng, thì tệp nhị phân sẽ là một APK lớn, chứa các tệp nhị phân gốc cho từng nền tảng mục tiêu được chỉ định.
Thẻ:changes_inputs
,loading_and_analysis
,loses_incremental_state
--apple_crosstool_top=<a build target label>
default: "@bazel_tools//tools/cpp:toolchain"-
Nhãn của gói crosstool sẽ được dùng trong các quy tắc Apple và Objc cũng như các phần phụ thuộc của chúng.
Thẻ:loses_incremental_state
,changes_inputs
--cc_output_directory_tag=<a string>
mặc định: ""-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:affects_outputs
--compiler=<a string>
mặc định: xem nội dung mô tả-
Trình biên dịch C++ cần dùng để biên dịch mục tiêu.
Thẻ:loading_and_analysis
,execution
--coverage_output_generator=<a build target label>
default: "@bazel_tools//tools/test:lcov_merger"-
Vị trí của tệp nhị phân dùng để xử lý hậu kỳ các báo cáo phạm vi thô. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Giá trị mặc định là "//tools/test:lcov_merger".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_report_generator=<a build target label>
default: "@bazel_tools//tools/test:coverage_report_generator"-
Vị trí của tệp nhị phân dùng để tạo báo cáo về mức độ phù hợp. Hiện tại, đây phải là một nhóm tệp chứa một tệp duy nhất, đó là tệp nhị phân. Mặc định là "//tools/test:coverage_report_generator".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--coverage_support=<a build target label>
default: "@bazel_tools//tools/test:coverage_support"-
Vị trí của các tệp hỗ trợ bắt buộc trên đầu vào của mọi thao tác kiểm thử thu thập mức độ phù hợp của mã. Giá trị mặc định là "//tools/test:coverage_support".
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
--custom_malloc=<a build target label>
mặc định: xem nội dung mô tả-
Chỉ định một cách triển khai malloc tuỳ chỉnh. Chế độ cài đặt này sẽ ghi đè các thuộc tính malloc trong quy tắc bản dựng.
Thẻ:changes_inputs
,affects_outputs
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các biểu thức chính quy được phân tách bằng dấu phẩy, mỗi biểu thức có thể có tiền tố là dấu "-" (biểu thức phủ định), được chỉ định (=) cho danh sách các mục tiêu giá trị ràng buộc được phân tách bằng dấu phẩy. Nếu một mục tiêu không khớp với biểu thức phủ định nào và khớp với ít nhất một biểu thức khẳng định, thì quá trình phân giải chuỗi công cụ của mục tiêu đó sẽ được thực hiện như thể mục tiêu đó đã khai báo các giá trị ràng buộc dưới dạng các ràng buộc thực thi. Ví dụ: //demo,-test=@platforms//cpus:x86_64 sẽ thêm "x86_64" vào mọi mục tiêu trong //demo, ngoại trừ những mục tiêu có tên chứa "test".
Thẻ:loading_and_analysis
--[no]experimental_include_xcode_execution_requirements
mặc định: "false"-
Nếu được đặt, hãy thêm yêu cầu thực thi "requires-xcode:{version}" vào mọi thao tác Xcode. Nếu phiên bản Xcode có nhãn được phân tách bằng dấu gạch ngang, hãy thêm yêu cầu thực thi "requires-xcode-label:{version_label}".
Thẻ:loses_incremental_state
,loading_and_analysis
,execution
,experimental
--[no]experimental_prefer_mutual_xcode
mặc định: "true"-
Nếu đúng, hãy sử dụng Xcode gần đây nhất có sẵn trên cả thiết bị cục bộ và từ xa. Nếu là false hoặc nếu không có phiên bản nào tương thích, hãy sử dụng phiên bản Xcode cục bộ được chọn thông qua xcode-select.
Thẻ:loses_incremental_state
,experimental
--extra_execution_platforms=<comma-separated list of options>
mặc định: ""-
Các nền tảng có sẵn dưới dạng nền tảng thực thi để chạy các thao tác. Bạn có thể chỉ định nền tảng theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các nền tảng này sẽ được cân nhắc trước những nền tảng được khai báo trong tệp WORKSPACE bằng register_execution_platforms(). Bạn chỉ có thể đặt lựa chọn này một lần; các phiên bản sau sẽ ghi đè các chế độ cài đặt cờ trước đó.
Thẻ:execution
--extra_toolchains=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các quy tắc chuỗi công cụ cần được xem xét trong quá trình phân giải chuỗi công cụ. Bạn có thể chỉ định chuỗi công cụ theo mục tiêu chính xác hoặc theo mẫu mục tiêu. Các chuỗi công cụ này sẽ được xem xét trước những chuỗi công cụ được khai báo trong tệp WORKSPACE bằng register_toolchains().
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--grte_top=<a label>
mặc định: xem nội dung mô tả-
Nhãn cho một thư viện libc đã đăng ký. Giá trị mặc định được chọn theo chuỗi công cụ crosstool và bạn hầu như không bao giờ cần ghi đè giá trị này.
Thẻ:action_command_lines
,affects_outputs
--host_compiler=<a string>
mặc định: xem nội dung mô tả-
Cờ không hoạt động. Sẽ bị xoá trong một bản phát hành sau này.
Thẻ:loading_and_analysis
,execution
--host_grte_top=<a label>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, chế độ cài đặt này sẽ ghi đè thư mục cấp cao nhất libc (--grte_top) cho cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_platform=<a build target label>
mặc định: "@bazel_tools//tools:host_platform"-
Nhãn của một quy tắc nền tảng mô tả hệ thống máy chủ.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--[no]incompatible_bazel_test_exec_run_under
mặc định: "false"-
Nếu được bật, "bazel test --run_under=//:runner" sẽ tạo "//:runner" trong cấu hình exec. Nếu bị tắt, thao tác này sẽ tạo "//:runner" trong cấu hình đích. Bazel thực thi các kiểm thử trên các máy thực thi, vì vậy, phương án đầu tiên chính xác hơn. Điều này không ảnh hưởng đến "bazel run", luôn tạo "`--run_under=//foo" trong cấu hình mục tiêu.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features
mặc định: "true"-
Nếu đúng, Bazel sẽ không bật các tính năng "host" và "nonhost" trong chuỗi công cụ c++ (xem https://github.com/bazelbuild/bazel/issues/7407 để biết thêm thông tin).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_enable_apple_toolchain_resolution
mặc định: "false"-
Sử dụng độ phân giải chuỗi công cụ để chọn Apple SDK cho các quy tắc của Apple (Starlark và gốc)
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_remove_legacy_whole_archive
mặc định: "true"-
Nếu đúng, theo mặc định, Bazel sẽ không liên kết các phần phụ thuộc của thư viện dưới dạng toàn bộ kho lưu trữ (xem https://github.com/bazelbuild/bazel/issues/7362 để biết hướng dẫn di chuyển).
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_strip_executable_safely
mặc định: "false"-
Nếu đúng, thao tác xoá cho các tệp thực thi sẽ sử dụng cờ -x. Cờ này không làm gián đoạn quá trình phân giải biểu tượng động.
Thẻ:action_command_lines
,incompatible_change
-
Sử dụng các đối tượng dùng chung của giao diện nếu được chuỗi công cụ hỗ trợ. Tất cả các chuỗi công cụ ELF hiện đều hỗ trợ chế độ cài đặt này.
Thẻ:loading_and_analysis
,affects_outputs
,affects_outputs
--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của iOS SDK cần dùng để tạo ứng dụng iOS. Nếu không được chỉ định, sẽ sử dụng phiên bản iOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của SDK macOS cần dùng để tạo các ứng dụng macOS. Nếu không được chỉ định, sẽ sử dụng phiên bản SDK macOS mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--minimum_os_version=<a string>
mặc định: xem nội dung mô tả-
Phiên bản hệ điều hành tối thiểu mà mục tiêu biên dịch của bạn hướng đến.
Thẻ:loading_and_analysis
,affects_outputs
--platform_mappings=<a main workspace-relative path>
mặc định: ""-
Vị trí của một tệp ánh xạ mô tả nền tảng cần sử dụng nếu không có nền tảng nào được đặt hoặc cờ cần đặt khi đã có nền tảng. Phải tương ứng với thư mục gốc của không gian làm việc chính. Mặc định là "platform_mappings" (một tệp ngay bên dưới thư mục gốc của không gian làm việc).
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
,immutable
--platforms=<a build target label>
mặc định: ""-
Nhãn của các quy tắc nền tảng mô tả nền tảng mục tiêu cho lệnh hiện tại.
Thẻ:affects_outputs
,changes_inputs
,loading_and_analysis
--python_path=<a string>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối của trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--python_top=<a build target label>
mặc định: xem nội dung mô tả-
Nhãn của py_runtime đại diện cho trình thông dịch Python được gọi để chạy các mục tiêu Python trên nền tảng mục tiêu. Không dùng nữa; bị vô hiệu hoá bằng --incompatible_use_python_toolchains.
Thẻ:loading_and_analysis
,affects_outputs
--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản SDK tvOS cần dùng để tạo ứng dụng tvOS. Nếu không được chỉ định, sẽ sử dụng phiên bản tvOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Chỉ định phiên bản của watchOS SDK cần dùng để tạo ứng dụng watchOS. Nếu không được chỉ định, hãy sử dụng phiên bản watchOS SDK mặc định từ "xcode_version".
Thẻ:loses_incremental_state
--xcode_version=<a string>
mặc định: xem nội dung mô tả-
Nếu được chỉ định, hãy sử dụng Xcode của phiên bản đã cho cho các thao tác xây dựng có liên quan. Nếu không chỉ định, hãy sử dụng phiên bản mặc định của trình thực thi Xcode.
Thẻ:loses_incremental_state
--xcode_version_config=<a build target label>
mặc định: "@bazel_tools//tools/cpp:host_xcodes"-
Nhãn của quy tắc xcode_config sẽ được dùng để chọn phiên bản Xcode trong cấu hình bản dựng.
Thẻ:loses_incremental_state
,loading_and_analysis
- Các lựa chọn kiểm soát đầu ra của lệnh:
--[no]apple_generate_dsym
mặc định: "false"-
Có tạo (các) tệp biểu tượng gỡ lỗi (.dSYM) hay không.
Thẻ:affects_outputs
,action_command_lines
--[no]build_runfile_links
mặc định: "true"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfile cho tất cả các mục tiêu. Nếu là false, chỉ ghi các tệp này khi cần thiết theo lệnh chạy, kiểm thử hoặc thao tác cục bộ.
Thẻ:affects_outputs
--[no]build_runfile_manifests
mặc định: "true"-
Nếu đúng, hãy ghi tệp kê khai runfile cho tất cả các mục tiêu. Nếu là false, hãy bỏ qua các giá trị này. Các kiểm thử cục bộ sẽ không chạy được khi có giá trị false.
Thẻ:affects_outputs
--[no]build_test_dwp
mặc định: "false"-
Nếu được bật, khi tạo các bài kiểm thử C++ một cách tĩnh và bằng cách phân hạch, tệp .dwp cho tệp nhị phân kiểm thử cũng sẽ được tạo tự động.
Thẻ:loading_and_analysis
,affects_outputs
--cc_proto_library_header_suffixes=<comma-separated set of options>
mặc định: ".pb.h"-
Đặt hậu tố của các tệp tiêu đề mà cc_proto_library tạo.
Thẻ:affects_outputs
,loading_and_analysis
--cc_proto_library_source_suffixes=<comma-separated set of options>
mặc định: ".pb.cc"-
Đặt hậu tố của các tệp nguồn mà cc_proto_library tạo ra.
Thẻ:affects_outputs
,loading_and_analysis
--[no]experimental_proto_descriptor_sets_include_source_info
mặc định: "false"-
Chạy các thao tác bổ sung cho các phiên bản API Java thay thế trong proto_library.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_save_feature_state
mặc định: "false"-
Lưu trạng thái của các tính năng đã bật và được yêu cầu dưới dạng đầu ra của quá trình biên dịch.
Thẻ:affects_outputs
,experimental
--fission=<a set of compilation modes>
mặc định: "no"-
Chỉ định chế độ biên dịch nào sử dụng phân hạch cho các hoạt động biên dịch và liên kết C++. Có thể là bất kỳ tổ hợp nào của {'fastbuild', 'dbg', 'opt'} hoặc các giá trị đặc biệt "yes" để bật tất cả các chế độ và "no" để tắt tất cả các chế độ.
Thẻ:loading_and_analysis
,action_command_lines
,affects_outputs
--[no]incompatible_always_include_files_in_data
mặc định: "true"-
Nếu đúng, các quy tắc gốc sẽ thêm <code>DefaultInfo.files</code> của các phần phụ thuộc dữ liệu vào runfiles, khớp với hành vi được đề xuất cho các quy tắc Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid).
Thẻ:affects_outputs
,incompatible_change
--[no]legacy_external_runfiles
mặc định: "false"-
Nếu đúng, hãy tạo các rừng liên kết tượng trưng runfiles cho các kho lưu trữ bên ngoài trong .runfiles/wsname/external/repo (ngoài .runfiles/repo).
Thẻ:affects_outputs
--[no]objc_generate_linkmap
mặc định: "false"-
Chỉ định xem có tạo tệp linkmap hay không.
Thẻ:affects_outputs
--[no]save_temps
mặc định: "false"-
Nếu được đặt, các kết quả tạm thời từ gcc sẽ được lưu. Các tệp này bao gồm tệp .s (mã hợp ngữ), tệp .i (C đã xử lý trước) và tệp .ii (C++ đã xử lý trước).
Thẻ:affects_outputs
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, thay vì sự tồn tại của đầu ra:
--action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình mục tiêu. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--allowed_cpu_values=<comma-separated set of options>
mặc định: ""-
Các giá trị được phép cho cờ --cpu.
Thẻ:changes_inputs
,affects_outputs
--[no]android_databinding_use_androidx
mặc định: "true"-
Tạo các tệp liên kết dữ liệu tương thích với AndroidX. Chỉ dùng với tính năng liên kết dữ liệu phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]android_databinding_use_v3_4_args
mặc định: "true"-
Sử dụng android databinding phiên bản 2 với đối số 3.4.0. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--android_dynamic_mode=<off, default or fully>
mặc định: "tắt"-
Xác định xem các phần phụ thuộc C++ của các quy tắc Android sẽ được liên kết một cách linh động khi cc_binary không tạo rõ ràng một thư viện dùng chung hay không. "default" có nghĩa là bazel sẽ chọn có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:affects_outputs
,loading_and_analysis
--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency>
mặc định: "theo bảng chữ cái"-
Đặt thứ tự của các tệp kê khai được truyền đến trình sáp nhập tệp kê khai cho các tệp nhị phân Android. ALPHABETICAL nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với execroot. ALPHABETICAL_BY_CONFIGURATION có nghĩa là các tệp kê khai được sắp xếp theo đường dẫn tương ứng với thư mục cấu hình trong thư mục đầu ra. DEPENDENCY có nghĩa là các tệp kê khai được sắp xếp theo thứ tự, trong đó tệp kê khai của mỗi thư viện sẽ xuất hiện trước tệp kê khai của các phần phụ thuộc.
Thẻ:action_command_lines
,execution
--[no]android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
--[no]build_python_zip
mặc định: "auto"-
Tạo tệp zip thực thi Python; bật trên Windows, tắt trên các nền tảng khác
Thẻ:affects_outputs
--catalyst_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple Catalyst.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]collect_code_coverage
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ đo lường mã (sử dụng tính năng đo lường ngoại tuyến nếu có thể) và sẽ thu thập thông tin về mức độ phù hợp trong quá trình kiểm thử. Chỉ những mục tiêu khớp với --instrumentation_filter mới bị ảnh hưởng. Thông thường, bạn không nên chỉ định trực tiếp lựa chọn này mà nên dùng lệnh "bazel coverage".
Thẻ:affects_outputs
--compilation_mode=<fastbuild, dbg or opt>
[-c
] mặc định: "fastbuild"-
Chỉ định chế độ mà tệp nhị phân sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn C.
Thẻ:action_command_lines
,affects_outputs
--copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc.
Thẻ:action_command_lines
,affects_outputs
--cpu=<a string>
mặc định: ""-
CPU mục tiêu.
Thẻ:changes_inputs
,affects_outputs
--cs_fdo_absolute_path=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ CSFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên đường dẫn tuyệt đối của tệp zip chứa tệp hồ sơ, tệp hồ sơ LLVM thô hoặc được lập chỉ mục.
Thẻ:affects_outputs
--cs_fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo các tệp nhị phân bằng tính năng đo lường FDO theo ngữ cảnh. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--cs_fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
cs_fdo_profile đại diện cho hồ sơ theo ngữ cảnh sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi biên dịch các tệp nguồn C++.
Thẻ:action_command_lines
,affects_outputs
--define=<a 'name=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi lựa chọn --define chỉ định một phép gán cho biến bản dựng. Trong trường hợp có nhiều giá trị cho một biến, giá trị cuối cùng sẽ được dùng.
Thẻ:changes_inputs
,affects_outputs
--dynamic_mode=<off, default or fully>
mặc định: "default"-
Xác định xem các tệp nhị phân C++ sẽ được liên kết một cách linh động hay không. "default" có nghĩa là Bazel sẽ chọn xem có liên kết động hay không. "fully" có nghĩa là tất cả các thư viện sẽ được liên kết một cách linh động. "off" có nghĩa là tất cả các thư viện sẽ được liên kết ở chế độ tĩnh.
Thẻ:loading_and_analysis
,affects_outputs
--[no]enable_propeller_optimize_absolute_paths
mặc định: "true"-
Nếu được đặt, mọi việc sử dụng đường dẫn tuyệt đối để tối ưu hoá cánh quạt sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_remaining_fdo_absolute_paths
mặc định: "true"-
Nếu bạn đặt chính sách này, mọi việc sử dụng đường dẫn tuyệt đối cho FDO sẽ gây ra lỗi.
Thẻ:affects_outputs
--[no]enable_runfiles
mặc định: "auto"-
Bật cây liên kết tượng trưng runfiles; Theo mặc định, chế độ này sẽ tắt trên Windows và bật trên các nền tảng khác.
Thẻ:affects_outputs
--experimental_action_listener=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Ngừng sử dụng và thay bằng các khía cạnh. Sử dụng action_listener để đính kèm extra_action vào các thao tác xây dựng hiện có.
Thẻ:execution
,experimental
--[no]experimental_android_compress_java_resources
mặc định: "false"-
Nén tài nguyên Java trong APK
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_databinding_v2
mặc định: "true"-
Sử dụng tính năng liên kết dữ liệu Android phiên bản 2. Cờ này không có thao tác nào.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_android_resource_shrinking
mặc định: "false"-
Cho phép rút gọn tài nguyên cho các tệp APK android_binary sử dụng ProGuard.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_android_rewrite_dexes_with_rex
mặc định: "false"-
sử dụng công cụ rex để viết lại các tệp dex
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_collect_code_coverage_for_generated_files
mặc định: "false"-
Nếu được chỉ định, Bazel cũng sẽ tạo thông tin thu thập mức độ phù hợp cho các tệp đã tạo.
Thẻ:affects_outputs
,experimental
--experimental_objc_fastbuild_options=<comma-separated list of options>
mặc định: "-O0,-DDEBUG=1"-
Sử dụng các chuỗi này làm lựa chọn trình biên dịch fastbuild objc.
Thẻ:action_command_lines
--[no]experimental_omitfp
mặc định: "false"-
Nếu đúng, hãy dùng libunwind để huỷ ngăn xếp và biên dịch bằng -fomit-frame-pointer và -fasynchronous-unwind-tables.
Thẻ:action_command_lines
,affects_outputs
,experimental
--experimental_output_paths=<off, content or strip>
mặc định: "tắt"-
Nên dùng mô hình nào để quy tắc ghi đầu ra ở đâu trong cây đầu ra, đặc biệt là đối với các bản dựng đa nền tảng / đa cấu hình. Đây là một tính năng thử nghiệm. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/6526 để biết thông tin chi tiết. Các thao tác Starlark có thể chọn tham gia vào việc liên kết đường dẫn bằng cách thêm khoá "supports-path-mapping" vào từ điển "execution_requirements".
Thẻ:loses_incremental_state
,bazel_internal_configuration
,affects_outputs
,execution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment>
nhiều mục đích sử dụng được tích luỹ-
Mỗi mục nhập phải có dạng label=value, trong đó label đề cập đến một nền tảng và values là tên viết tắt mong muốn dùng trong đường dẫn đầu ra. Chỉ được dùng khi --experimental_platform_in_output_dir là true. Có mức độ ưu tiên đặt tên cao nhất.
Thẻ:affects_outputs
,experimental
--[no]experimental_platform_in_output_dir
mặc định: "false"-
Nếu đúng, tên viết tắt của nền tảng mục tiêu sẽ được dùng trong tên thư mục đầu ra thay vì CPU. Lược đồ chính xác là thử nghiệm và có thể thay đổi: Trước tiên, trong trường hợp hiếm gặp khi lựa chọn --platforms không có chính xác một giá trị, thì hàm băm của lựa chọn platforms sẽ được sử dụng. Tiếp theo, nếu có tên ngắn nào cho nền tảng hiện tại được đăng ký bằng --experimental_override_name_platform_in_output_dir, thì tên ngắn đó sẽ được dùng. Sau đó, nếu bạn đặt --experimental_use_platforms_in_output_dir_legacy_heuristic, hãy dùng tên ngắn dựa trên Nhãn nền tảng hiện tại. Cuối cùng, hàm băm của lựa chọn nền tảng sẽ được dùng làm phương án cuối cùng.
Thẻ:affects_outputs
,experimental
--[no]experimental_py_binaries_include_label
mặc định: "false"-
Các mục tiêu py_binary bao gồm cả nhãn của chúng ngay cả khi tính năng đóng dấu bị tắt.
Thẻ:affects_outputs
,experimental
--[no]experimental_use_llvm_covmap
mặc định: "false"-
Nếu được chỉ định, Bazel sẽ tạo thông tin về bản đồ mức độ phù hợp llvm-cov thay vì gcov khi collect_code_coverage được bật.
Thẻ:changes_inputs
,affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_use_platforms_in_output_dir_legacy_heuristic
mặc định: "true"-
Vui lòng chỉ sử dụng cờ này trong quá trình di chuyển hoặc thử nghiệm theo đề xuất. Xin lưu ý rằng phương pháp phỏng đoán này có những điểm thiếu sót đã biết và bạn nên di chuyển để chỉ dựa vào --experimental_override_name_platform_in_output_dir.
Thẻ:affects_outputs
,experimental
--fdo_instrument=<a string>
mặc định: xem nội dung mô tả-
Tạo tệp nhị phân bằng tính năng đo lường FDO. Với trình biên dịch Clang/LLVM, nó cũng chấp nhận tên thư mục mà(các) tệp hồ sơ thô sẽ được kết xuất trong thời gian chạy.
Thẻ:affects_outputs
--fdo_optimize=<a string>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ FDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của một tệp zip chứa cây tệp .gcda, một tệp afdo chứa hồ sơ tự động hoặc một tệp hồ sơ LLVM. Cờ này cũng chấp nhận các tệp được chỉ định dưới dạng nhãn (ví dụ: `//foo/bar:file.afdo` – bạn có thể cần thêm chỉ thị `exports_files` vào gói tương ứng) và các nhãn trỏ đến mục tiêu `fdo_profile`. Cờ này sẽ được thay thế bằng quy tắc "fdo_profile".
Thẻ:affects_outputs
--fdo_prefetch_hints=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng gợi ý tìm nạp trước bộ nhớ đệm.
Thẻ:affects_outputs
--fdo_profile=<a build target label>
mặc định: xem nội dung mô tả-
fdo_profile đại diện cho hồ sơ sẽ được dùng để tối ưu hoá.
Thẻ:affects_outputs
--features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt cho các mục tiêu được tạo trong cấu hình mục tiêu. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực. Xem thêm --host_features
Các thẻ:changes_inputs
,affects_outputs
--[no]force_pic
mặc định: "false"-
Nếu được bật, tất cả các bản biên dịch C++ sẽ tạo ra mã độc lập với vị trí ("-fPIC"), các đường liên kết ưu tiên các thư viện được tạo sẵn PIC hơn các thư viện không phải PIC và các đường liên kết tạo ra các tệp thực thi độc lập với vị trí ("-pie").
Thẻ:loading_and_analysis
,affects_outputs
--host_action_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định tập hợp các biến môi trường có sẵn cho các thao tác có cấu hình thực thi. Bạn có thể chỉ định các biến theo tên. Trong trường hợp này, giá trị sẽ được lấy từ môi trường gọi, hoặc theo cặp tên=giá trị để đặt giá trị độc lập với môi trường gọi. Bạn có thể sử dụng lựa chọn này nhiều lần; đối với các lựa chọn được đưa ra cho cùng một biến, lựa chọn mới nhất sẽ được áp dụng, các lựa chọn cho các biến khác nhau sẽ được tích luỹ.
Thẻ:action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt>
mặc định: "opt"-
Chỉ định chế độ mà các công cụ được dùng trong quá trình tạo sẽ được tạo. Giá trị: "fastbuild", "dbg", "opt".
Thẻ:affects_outputs
,action_command_lines
--host_conlyopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình biên dịch C khi biên dịch các tệp nguồn C (nhưng không phải C++) trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_copt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_cpu=<a string>
mặc định: ""-
CPU lưu trữ.
Thẻ:changes_inputs
,affects_outputs
--host_cxxopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch C++ cho các công cụ được tạo trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_features=<a string>
nhiều mục đích sử dụng được tích luỹ-
Theo mặc định, các tính năng đã cho sẽ được bật hoặc tắt đối với các mục tiêu được tạo trong cấu hình thực thi. Việc chỉ định -<feature> sẽ tắt tính năng này. Các đặc điểm tiêu cực luôn ghi đè các đặc điểm tích cực.
Thẻ:changes_inputs
,affects_outputs
--host_force_python=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Ghi đè phiên bản Python cho cấu hình exec. Có thể là "PY2" hoặc "PY3".
Thẻ:loading_and_analysis
,affects_outputs
--host_linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến trình liên kết khi liên kết các công cụ trong cấu hình exec.
Thẻ:action_command_lines
,affects_outputs
--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu lưu trữ. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc truyền đến trình biên dịch C/C++ khi biên dịch một số tệp trong cấu hình thực thi. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--[no]incompatible_auto_exec_groups
mặc định: "false"-
Khi được bật, một nhóm thực thi sẽ tự động được tạo cho mỗi chuỗi công cụ mà một quy tắc sử dụng. Để quy tắc này hoạt động, bạn cần chỉ định tham số "toolchain" cho các thao tác của quy tắc. Để biết thêm thông tin, hãy xem https://github.com/bazelbuild/bazel/issues/17134.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_merge_genfiles_directory
mặc định: "true"-
Nếu đúng, thư mục genfiles sẽ được gộp vào thư mục bin.
Thẻ:affects_outputs
,incompatible_change
--[no]instrument_test_targets
mặc định: "false"-
Khi bật tính năng đo lường mức độ phù hợp, hãy chỉ định xem có nên cân nhắc việc đo lường các quy tắc kiểm thử hay không. Khi được đặt, các quy tắc kiểm thử do --instrumentation_filter bao gồm sẽ được đo lường. Nếu không, các quy tắc kiểm thử sẽ luôn bị loại trừ khỏi hoạt động đo lường mức độ sử dụng.
Thẻ:affects_outputs
--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
default: "-/javatests[/:],-/test/java[/:]"-
Khi tính năng đo lường mức độ phù hợp được bật, chỉ những quy tắc có tên được đưa vào bộ lọc dựa trên biểu thức chính quy đã chỉ định mới được đo lường. Thay vào đó, các quy tắc có tiền tố "-" sẽ bị loại trừ. Xin lưu ý rằng chỉ các quy tắc không phải quy tắc kiểm thử mới được đo lường, trừ phi bạn bật --instrument_test_targets.
Thẻ:affects_outputs
--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS tối thiểu tương thích với các trình mô phỏng và thiết bị mục tiêu. Nếu không chỉ định, hãy sử dụng "ios_sdk_version".
Thẻ:loses_incremental_state
--ios_multi_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo ios_application. Kết quả là một tệp nhị phân phổ quát chứa tất cả các cấu trúc được chỉ định.
Thẻ:loses_incremental_state
,loading_and_analysis
--[no]legacy_whole_archive
mặc định: "true"-
Không được dùng nữa, được thay thế bằng --incompatible_remove_legacy_whole_archive (xem https://github.com/bazelbuild/bazel/issues/7362 để biết thông tin chi tiết). Khi bật, hãy sử dụng --whole-archive cho các quy tắc cc_binary có linkshared=True và linkstatic=True hoặc "-static" trong linkopts. Điều này chỉ nhằm mục đích tương thích ngược. Một lựa chọn thay thế tốt hơn là sử dụng alwayslink=1 khi cần.
Thẻ:action_command_lines
,affects_outputs
,deprecated
--linkopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để truyền đến gcc khi liên kết.
Thẻ:action_command_lines
,affects_outputs
--ltobackendopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước phụ trợ LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--ltoindexopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Lựa chọn bổ sung để chuyển đến bước lập chỉ mục LTO (trong --features=thin_lto).
Thẻ:action_command_lines
,affects_outputs
--macos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple macOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản macOS tối thiểu tương thích cho các mục tiêu. Nếu không chỉ định, hãy sử dụng "macos_sdk_version".
Thẻ:loses_incremental_state
--memprof_profile=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng hồ sơ memprof.
Thẻ:affects_outputs
--[no]objc_debug_with_GLIBCXX
mặc định: "false"-
Nếu được đặt và chế độ biên dịch được đặt thành "dbg", hãy xác định GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC và GLIBCPP_CONCEPT_CHECKS.
Thẻ:action_command_lines
--[no]objc_enable_binary_stripping
mặc định: "false"-
Có thực hiện việc xoá ký hiệu và mã không dùng đến trên các tệp nhị phân được liên kết hay không. Thao tác xoá nhị phân sẽ được thực hiện nếu bạn chỉ định cả cờ này và --compilation_mode=opt.
Thẻ:action_command_lines
--objccopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến gcc khi biên dịch tệp nguồn Objective-C/C++.
Thẻ:action_command_lines
--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền có chọn lọc đến gcc khi biên dịch một số tệp. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 sẽ thêm lựa chọn dòng lệnh -O0 vào dòng lệnh gcc của tất cả các tệp cc trong //foo/ ngoại trừ bar.cc.
Thẻ:action_command_lines
,affects_outputs
--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để chọn lọc chuyển đến phần phụ trợ LTO (trong --features=thin_lto) khi biên dịch một số đối tượng phụ trợ nhất định. Bạn có thể truyền tuỳ chọn này nhiều lần. Cú pháp: regex_filter@option_1,option_2,...,option_n. Trong đó, regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ. option_1 đến option_n là các tuỳ chọn dòng lệnh tuỳ ý. Nếu một lựa chọn có dấu phẩy, bạn phải đặt lựa chọn đó trong dấu ngoặc kép có dấu gạch chéo ngược. Các lựa chọn có thể chứa @. Chỉ @ đầu tiên được dùng để phân tách chuỗi. Ví dụ: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 sẽ thêm tuỳ chọn dòng lệnh -O0 vào dòng lệnh phụ trợ LTO của tất cả các tệp o trong //foo/ ngoại trừ bar.o.
Thẻ:action_command_lines
,affects_outputs
--platform_suffix=<a string>
mặc định: xem nội dung mô tả-
Chỉ định một hậu tố sẽ được thêm vào thư mục cấu hình.
Thẻ:loses_incremental_state
,affects_outputs
,loading_and_analysis
--propeller_optimize=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ Propeller để tối ưu hoá mục tiêu bản dựng.Hồ sơ Propeller phải bao gồm ít nhất một trong hai tệp, đó là hồ sơ cc và hồ sơ ld. Cờ này chấp nhận một nhãn bản dựng phải tham chiếu đến các tệp đầu vào hồ sơ cánh quạt. Ví dụ: tệp BUILD xác định nhãn, trong a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",)Bạn có thể phải thêm chỉ thị exports_files vào gói tương ứng để Bazel có thể nhìn thấy các tệp này. Bạn phải sử dụng lựa chọn này dưới dạng: --propeller_optimize=//a/b:propeller_profile
Thẻ:action_command_lines
,affects_outputs
--propeller_optimize_absolute_cc_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp cc_profile cho bản dựng được tối ưu hoá Propeller.
Thẻ:affects_outputs
--propeller_optimize_absolute_ld_profile=<a string>
mặc định: xem nội dung mô tả-
Tên đường dẫn tuyệt đối của tệp ld_profile cho các bản dựng được tối ưu hoá bằng Propeller.
Thẻ:affects_outputs
--run_under=<a prefix in front of command>
mặc định: xem nội dung mô tả-
Tiền tố cần chèn trước các tệp thực thi cho lệnh "test" và "run". Nếu giá trị là "foo -bar" và dòng lệnh thực thi là "test_binary -baz", thì dòng lệnh cuối cùng là "foo -bar test_binary -baz".Đây cũng có thể là nhãn cho mục tiêu có thể thực thi. Một số ví dụ là: "valgrind", "strace", "strace -c", "valgrind --quiet --num-callers=20", "//package:target", "//package:target --options".
Thẻ:action_command_lines
-
Nếu đúng, các thư viện gốc có chức năng giống nhau sẽ được chia sẻ giữa các mục tiêu khác nhau
Thẻ:loading_and_analysis
,affects_outputs
--[no]stamp
mặc định: "false"-
Đóng dấu tệp nhị phân bằng ngày, tên người dùng, tên máy chủ, thông tin về không gian làm việc, v.v.
Thẻ:affects_outputs
--strip=<always, sometimes or never>
mặc định: "sometimes"-
Chỉ định có xoá các tệp nhị phân và thư viện dùng chung hay không (bằng cách sử dụng "-Wl,--strip-debug"). Giá trị mặc định của "sometimes" có nghĩa là chỉ xoá nếu --compilation_mode=fastbuild.
Thẻ:affects_outputs
--stripopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến strip khi tạo tệp nhị phân "<name>.stripped".
Thẻ:action_command_lines
,affects_outputs
--tvos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple tvOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản tvOS tối thiểu tương thích cho các trình mô phỏng và thiết bị mục tiêu. Nếu không được chỉ định, sẽ sử dụng "tvos_sdk_version".
Thẻ:loses_incremental_state
--visionos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple visionOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_cpus=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ-
Danh sách các cấu trúc được phân tách bằng dấu phẩy để tạo các tệp nhị phân Apple watchOS.
Thẻ:loses_incremental_state
,loading_and_analysis
--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản watchOS tối thiểu tương thích với các thiết bị và trình mô phỏng mục tiêu. Nếu bạn không chỉ định, hệ thống sẽ dùng "watchos_sdk_version".
Thẻ:loses_incremental_state
--xbinary_fdo=<a build target label>
mặc định: xem nội dung mô tả-
Sử dụng thông tin hồ sơ XbinaryFDO để tối ưu hoá quá trình biên dịch. Chỉ định tên của hồ sơ nhị phân chéo mặc định. Khi được dùng cùng với --fdo_instrument/--fdo_optimize/--fdo_profile, các lựa chọn đó sẽ luôn được ưu tiên như thể xbinary_fdo không bao giờ được chỉ định.
Thẻ:affects_outputs
- Các lựa chọn ảnh hưởng đến mức độ Bazel thực thi nghiêm ngặt các đầu vào bản dựng hợp lệ (định nghĩa quy tắc, tổ hợp cờ, v.v.):
--[no]check_licenses
mặc định: "false"-
Kiểm tra để đảm bảo rằng các ràng buộc về việc cấp phép do các gói phụ thuộc áp đặt không xung đột với các chế độ phân phối của những mục tiêu đang được tạo. Theo mặc định, giấy phép không được kiểm tra.
Thẻ:build_file_semantics
--[no]check_visibility
mặc định: "true"-
Nếu bị vô hiệu hoá, các lỗi về khả năng hiển thị trong các phần phụ thuộc mục tiêu sẽ bị hạ cấp thành cảnh báo.
Thẻ:build_file_semantics
--[no]desugar_for_android
mặc định: "true"- Có đơn giản hoá mã byte Java 8 trước khi dexing hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]desugar_java8_libs
mặc định: "false"-
Có đưa các thư viện Java 8 được hỗ trợ vào ứng dụng cho các thiết bị cũ hay không.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
,experimental
--[no]enforce_constraints
mặc định: "true"-
Kiểm tra các môi trường mà mỗi mục tiêu tương thích và báo cáo lỗi nếu có mục tiêu nào có các phần phụ thuộc không hỗ trợ cùng một môi trường
Thẻ:build_file_semantics
--[no]experimental_check_desugar_deps
mặc định: "true"-
Có nên kiểm tra kỹ việc khử đường cú pháp chính xác ở cấp nhị phân Android hay không.
Thẻ:eagerness_to_exit
,loading_and_analysis
,experimental
--experimental_import_deps_checking=<a string>
mặc định: xem nội dung mô tả-
Không có thao tác, chỉ giữ lại để đảm bảo khả năng tương thích ngược
Thẻ:loading_and_analysis
--experimental_one_version_enforcement=<off, warning or error>
mặc định: "TẮT"-
Khi được bật, hãy thực thi rằng quy tắc java_binary không được chứa nhiều phiên bản của cùng một tệp lớp trên đường dẫn lớp. Quy trình thực thi này có thể làm hỏng bản dựng hoặc chỉ dẫn đến cảnh báo.
Thẻ:loading_and_analysis
--experimental_strict_java_deps=<off, warn, error, strict or default>
mặc định: "default"-
Nếu đúng, hãy kiểm tra để đảm bảo rằng một mục tiêu Java khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng các phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
--[no]incompatible_check_testonly_for_output_files
mặc định: "false"-
Nếu được bật, hãy kiểm tra testonly đối với các mục tiêu tiên quyết là tệp đầu ra bằng cách tra cứu testonly của quy tắc tạo. Thao tác này khớp với việc kiểm tra khả năng hiển thị.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_check_visibility_for_toolchains
mặc định: "false"-
Nếu được bật, quy trình kiểm tra khả năng hiển thị cũng áp dụng cho các hoạt động triển khai chuỗi công cụ.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_disable_native_android_rules
mặc định: "false"-
Nếu bạn bật chính sách này, thì việc sử dụng trực tiếp các quy tắc gốc của Android sẽ bị vô hiệu hoá. Vui lòng sử dụng các quy tắc Starlark Android từ https://github.com/bazelbuild/rules_android
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_disable_native_apple_binary_rule
mặc định: "false"-
Không có thao tác. Vẫn được giữ lại để tương thích ngược.
Thẻ:eagerness_to_exit
,incompatible_change
--[no]incompatible_python_disable_py2
mặc định: "true"-
Nếu đúng, việc sử dụng chế độ cài đặt Python 2 sẽ gây ra lỗi. Trong đó có python_version=PY2, srcs_version=PY2 và srcs_version=PY2ONLY. Hãy truy cập vào https://github.com/bazelbuild/bazel/issues/15684 để biết thêm thông tin.
Thẻ:loading_and_analysis
,incompatible_change
--[no]one_version_enforcement_on_java_tests
mặc định: "true"-
Khi được bật và experimental_one_version_enforcement được đặt thành một giá trị không phải NONE, hãy thực thi một phiên bản trên các mục tiêu java_test. Bạn có thể tắt cờ này để cải thiện hiệu suất kiểm thử gia tăng, nhưng sẽ bỏ lỡ các trường hợp vi phạm tiềm ẩn đối với một phiên bản.
Thẻ:loading_and_analysis
--python_native_rules_allowlist=<a build target label>
mặc định: xem nội dung mô tả-
Danh sách cho phép (mục tiêu package_group) để sử dụng khi thực thi --incompatible_python_disallow_native_rules.
Thẻ:loading_and_analysis
--[no]strict_filesets
mặc định: "false"-
Nếu bạn bật lựa chọn này, các nhóm tệp vượt quá ranh giới gói sẽ được báo cáo là lỗi.
Thẻ:build_file_semantics
,eagerness_to_exit
--strict_proto_deps=<off, warn, error, strict or default>
mặc định: "error"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được sử dụng trực tiếp dưới dạng phần phụ thuộc.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--strict_public_imports=<off, warn, error, strict or default>
mặc định: "tắt"-
Trừ phi ở trạng thái TẮT, nếu không, quy tắc này sẽ kiểm tra để đảm bảo rằng mục tiêu proto_library khai báo rõ ràng tất cả các mục tiêu được dùng trong "import public" dưới dạng mục tiêu được xuất.
Thẻ:build_file_semantics
,eagerness_to_exit
,incompatible_change
--[no]strict_system_includes
mặc định: "false"-
Nếu đúng, các tiêu đề được tìm thấy thông qua đường dẫn bao gồm hệ thống (-isystem) cũng phải được khai báo.
Thẻ:loading_and_analysis
,eagerness_to_exit
--target_environment=<a build target label>
nhiều mục đích sử dụng được tích luỹ-
Khai báo môi trường mục tiêu của bản dựng này. Phải là một tham chiếu nhãn đến quy tắc "environment". Nếu được chỉ định, tất cả các mục tiêu cấp cao nhất phải tương thích với môi trường này.
Thẻ:changes_inputs
- Các lựa chọn ảnh hưởng đến đầu ra ký của bản dựng:
--apk_signing_method=<v1, v2, v1_v2 or v4>
mặc định: "v1_v2"-
Triển khai để sử dụng ký APK
Thẻ:action_command_lines
,affects_outputs
,loading_and_analysis
--[no]device_debug_entitlements
mặc định: "true"-
Nếu bạn đặt và chế độ biên dịch không phải là "opt", thì các ứng dụng objc sẽ bao gồm các quyền gỡ lỗi khi ký.
Thẻ:changes_inputs
--ios_signing_cert_name=<a string>
mặc định: xem nội dung mô tả-
Tên chứng chỉ dùng để ký iOS. Nếu bạn không đặt chính sách này, thì trình duyệt sẽ quay lại sử dụng hồ sơ cung cấp. Có thể là lựa chọn ưu tiên về danh tính của chuỗi khoá của chứng chỉ hoặc (chuỗi con) tên chung của chứng chỉ, theo trang hướng dẫn của codesign (SIGNING IDENTITIES).
Thẻ:action_command_lines
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng có thể truy cập vào các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE.:
--[no]incompatible_disallow_legacy_py_provider
mặc định: "true"-
Không có thao tác, sẽ sớm bị xoá.
Thẻ:loading_and_analysis
,incompatible_change
--[no]incompatible_disallow_sdk_frameworks_attributes
mặc định: "false"-
Nếu đúng, hãy không cho phép các thuộc tính sdk_frameworks và weak_sdk_frameworks trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_objc_alwayslink_by_default
mặc định: "false"-
Nếu đúng, hãy đặt giá trị mặc định thành true cho các thuộc tính alwayslink trong objc_library và objc_import.
Thẻ:build_file_semantics
,incompatible_change
--[no]incompatible_python_disallow_native_rules
mặc định: "false"-
Khi đúng, sẽ xảy ra lỗi khi sử dụng các quy tắc py_* tích hợp; thay vào đó, bạn nên sử dụng các quy tắc rule_python. Hãy xem https://github.com/bazelbuild/bazel/issues/17773 để biết thêm thông tin và hướng dẫn di chuyển.
Thẻ:loading_and_analysis
,incompatible_change
- Các lựa chọn chi phối hành vi của môi trường thử nghiệm hoặc trình chạy thử nghiệm:
--[no]allow_analysis_failures
mặc định: "false"-
Nếu đúng, lỗi phân tích của mục tiêu quy tắc sẽ dẫn đến việc mục tiêu truyền một thực thể AnalysisFailureInfo chứa nội dung mô tả lỗi, thay vì dẫn đến lỗi bản dựng.
Thẻ:loading_and_analysis
,experimental
--analysis_testing_deps_limit=<an integer>
mặc định: "2000"-
Đặt số lượng tối đa các phần phụ thuộc bắc cầu thông qua một thuộc tính quy tắc có quá trình chuyển đổi cấu hình for_analysis_testing. Nếu vượt quá giới hạn này, bạn sẽ gặp lỗi về quy tắc.
Thẻ:loading_and_analysis
--[no]break_build_on_parallel_dex2oat_failure
mặc định: "false"-
Nếu đúng, các lỗi hành động dex2oat sẽ khiến bản dựng bị gián đoạn thay vì thực thi dex2oat trong thời gian chạy kiểm thử.
Thẻ:loading_and_analysis
,experimental
--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g. memory=10,30,60,100>
nhiều mục đích sử dụng được tích luỹ- Ghi đè số lượng tài nguyên mặc định cho các bài kiểm thử. Định dạng dự kiến là <resource>=<value>. Nếu một số dương duy nhất được chỉ định làm <value>, thì số đó sẽ ghi đè các tài nguyên mặc định cho tất cả các kích thước kiểm thử. Nếu bạn chỉ định 4 số được phân tách bằng dấu phẩy, thì các số này sẽ ghi đè số lượng tài nguyên cho các kích thước kiểm thử nhỏ, trung bình, lớn và rất lớn tương ứng. Các giá trị cũng có thể là HOST_RAM/HOST_CPU, có thể theo sau là [-|*]<float> (ví dụ: memory=HOST_RAM*.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4). Các tài nguyên kiểm thử mặc định do cờ này chỉ định sẽ bị ghi đè bởi các tài nguyên rõ ràng được chỉ định trong thẻ.
--[no]experimental_android_use_parallel_dex2oat
mặc định: "false"-
Sử dụng dex2oat song song để có thể tăng tốc android_test.
Thẻ:loading_and_analysis
,host_machine_resource_optimizations
,experimental
--[no]ios_memleaks
mặc định: "false"-
Bật tính năng kiểm tra rò rỉ bộ nhớ trong các mục tiêu ios_test.
Thẻ:action_command_lines
--ios_simulator_device=<a string>
mặc định: xem nội dung mô tả-
Thiết bị cần mô phỏng khi chạy một ứng dụng iOS trong trình mô phỏng, ví dụ: "iPhone 6". Bạn có thể lấy danh sách thiết bị bằng cách chạy "xcrun simctl list devicetypes" trên máy mà trình mô phỏng sẽ chạy.
Thẻ:test_runner
--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')>
mặc định: xem nội dung mô tả-
Phiên bản iOS sẽ chạy trên trình mô phỏng khi chạy hoặc kiểm thử. Quy tắc này sẽ bị bỏ qua đối với các quy tắc ios_test nếu bạn chỉ định một thiết bị mục tiêu trong quy tắc.
Thẻ:test_runner
--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once>
nhiều mục đích sử dụng được tích luỹ- Chỉ định số lần chạy mỗi bài kiểm thử. Nếu bất kỳ lần thử nào trong số đó không thành công vì bất kỳ lý do nào, thì toàn bộ quy trình kiểm thử sẽ được coi là không thành công. Thông thường, giá trị bạn chỉ định chỉ là một số nguyên. Ví dụ: --runs_per_test=3 sẽ chạy tất cả các kiểm thử 3 lần. Cú pháp thay thế: regex_filter@runs_per_test. Trong đó runs_per_test là một giá trị nguyên và regex_filter là danh sách các mẫu biểu thức chính quy bao gồm và loại trừ (Bạn cũng có thể xem --instrumentation_filter). Ví dụ: --runs_per_test=//foo/.*,-//foo/bar/.*@3 chạy tất cả các bài kiểm thử trong //foo/ ngoại trừ những bài kiểm thử trong foo/bar 3 lần. Bạn có thể truyền tuỳ chọn này nhiều lần. Đối số được truyền gần đây nhất khớp với đối số sẽ được ưu tiên. Nếu không có mục nào trùng khớp, thì kiểm thử chỉ chạy một lần.
--test_env=<a 'name=value' assignment with an optional value part>
nhiều mục đích sử dụng được tích luỹ-
Chỉ định các biến môi trường bổ sung sẽ được chèn vào môi trường trình chạy kiểm thử. Bạn có thể chỉ định các biến theo tên (trong trường hợp đó, giá trị của biến sẽ được đọc từ môi trường ứng dụng Bazel) hoặc theo cặp tên=giá trị. Bạn có thể sử dụng lựa chọn này nhiều lần để chỉ định một số biến. Chỉ được dùng bằng lệnh "bazel test".
Thẻ:test_runner
--test_timeout=<a single integer or comma-separated list of 4 integers>
mặc định: "-1"- Ghi đè các giá trị thời gian chờ kiểm thử mặc định cho thời gian chờ kiểm thử (tính bằng giây). Nếu bạn chỉ định một giá trị nguyên dương duy nhất, thì giá trị đó sẽ ghi đè tất cả danh mục. Nếu bạn chỉ định 4 số nguyên được phân tách bằng dấu phẩy, thì các số nguyên này sẽ thay thế thời gian chờ cho các khoảng thời gian ngắn, trung bình, dài và vĩnh viễn (theo thứ tự đó). Trong cả hai biểu mẫu, giá trị -1 cho biết blaze sẽ sử dụng thời gian chờ mặc định cho danh mục đó.
--[no]zip_undeclared_test_outputs
mặc định: "false"-
Nếu đúng, các đầu ra kiểm thử chưa khai báo sẽ được lưu trữ trong một tệp zip.
Thẻ:test_runner
- Các lựa chọn kích hoạt hoạt động tối ưu hoá thời gian xây dựng:
--[no]experimental_filter_library_jar_with_program_jar
mặc định: "false"-
Lọc ProGuard ProgramJar để xoá mọi lớp cũng có trong LibraryJar.
Thẻ:action_command_lines
,experimental
--[no]experimental_inmemory_dotd_files
mặc định: "true"-
Nếu được bật, các tệp .d C++ sẽ được truyền trực tiếp qua bộ nhớ từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_inmemory_jdeps_files
mặc định: "true"-
Nếu được bật, các tệp phần phụ thuộc (.jdeps) được tạo từ quá trình biên dịch Java sẽ được truyền qua bộ nhớ trực tiếp từ các nút bản dựng từ xa thay vì được ghi vào ổ đĩa.
Thẻ:loading_and_analysis
,execution
,affects_outputs
,experimental
--[no]experimental_retain_test_configuration_across_testonly
mặc định: "false"-
Khi được bật, --trim_test_configuration sẽ không cắt bớt cấu hình kiểm thử cho các quy tắc được đánh dấu testonly=1. Điều này nhằm mục đích giảm các vấn đề về xung đột hành động khi các quy tắc không phải quy tắc kiểm thử phụ thuộc vào các quy tắc cc_test. Không có hiệu lực nếu --trim_test_configuration là false.
Thẻ:loading_and_analysis
,loses_incremental_state
,experimental
--[no]experimental_starlark_cc_import
mặc định: "false"-
Nếu được bật, bạn có thể sử dụng phiên bản Starlark của cc_import.
Thẻ:loading_and_analysis
,experimental
--[no]experimental_unsupported_and_brittle_include_scanning
mặc định: "false"-
Có nên thu hẹp các đầu vào để biên dịch C/C++ bằng cách phân tích cú pháp các dòng #include từ tệp đầu vào hay không. Điều này có thể cải thiện hiệu suất và mức tăng bằng cách giảm kích thước của các cây đầu vào biên dịch. Tuy nhiên, điều này cũng có thể làm hỏng các bản dựng vì trình quét include không triển khai đầy đủ ngữ nghĩa của trình tiền xử lý C. Cụ thể, nó không hiểu các chỉ thị #include động và bỏ qua logic có điều kiện của trình tiền xử lý. Bạn tự chịu rủi ro khi sử dụng. Mọi vấn đề liên quan đến cờ hiệu này mà bạn gửi đều sẽ bị đóng.
Thẻ:loading_and_analysis
,execution
,changes_inputs
,experimental
--[no]incremental_dexing
mặc định: "true"-
Thực hiện hầu hết các thao tác dexing riêng cho từng tệp Jar.
Thẻ:affects_outputs
,loading_and_analysis
,loses_incremental_state
--[no]objc_use_dotd_pruning
mặc định: "true"-
Nếu được đặt, các tệp .d do clang phát ra sẽ được dùng để cắt bớt tập hợp các đầu vào được truyền vào quá trình biên dịch objc.
Thẻ:changes_inputs
,loading_and_analysis
--[no]process_headers_in_dependencies
mặc định: "false"-
Khi tạo một mục tiêu //a:a, hãy xử lý các tiêu đề trong tất cả các mục tiêu mà //a:a phụ thuộc vào (nếu bạn bật tính năng xử lý tiêu đề cho chuỗi công cụ).
Thẻ:execution
--[no]trim_test_configuration
mặc định: "true"-
Khi được bật, các lựa chọn liên quan đến kiểm thử sẽ bị xoá bên dưới cấp cao nhất của bản dựng. Khi cờ này đang hoạt động, các kiểm thử không thể được tạo dưới dạng các phần phụ thuộc của các quy tắc không phải kiểm thử, nhưng các thay đổi đối với các lựa chọn liên quan đến kiểm thử sẽ không khiến các quy tắc không phải kiểm thử được phân tích lại.
Thẻ:loading_and_analysis
,loses_incremental_state
- Các lựa chọn ảnh hưởng đến độ chi tiết, định dạng hoặc vị trí của hoạt động ghi nhật ký:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths>
mặc định: "-.*"-
In thông tin gỡ lỗi trong quá trình phân giải chuỗi công cụ. Cờ này lấy một biểu thức chính quy, được kiểm tra dựa trên các loại chuỗi công cụ và mục tiêu cụ thể để xem mục tiêu nào cần gỡ lỗi. Bạn có thể phân tách nhiều biểu thức chính quy bằng dấu phẩy, sau đó mỗi biểu thức chính quy sẽ được kiểm tra riêng. Lưu ý: Đầu ra của cờ này rất phức tạp và có thể chỉ hữu ích cho các chuyên gia về độ phân giải chuỗi công cụ.
Thẻ:terminal_output
- Các lựa chọn chỉ định hoặc sửa đổi một đầu vào chung cho lệnh Bazel không thuộc các danh mục khác.:
--flag_alias=<a 'name=value' flag alias>
nhiều mục đích sử dụng được tích luỹ-
Đặt tên viết tắt cho cờ Starlark. Hàm này nhận một cặp khoá-giá trị duy nhất dưới dạng "<key>=<value>" làm đối số.
Thẻ:changes_inputs
--[no]incompatible_default_to_explicit_init_py
mặc định: "false"-
Cờ này thay đổi hành vi mặc định để các tệp __init__.py không còn được tự động tạo trong runfiles của các mục tiêu Python nữa. Cụ thể, khi mục tiêu py_binary hoặc py_test có legacy_create_init được đặt thành "auto" (mặc định), thì mục tiêu đó sẽ được coi là false chỉ khi cờ này được đặt. Xem https://github.com/bazelbuild/bazel/issues/10076.
Thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py2_outputs_are_suffixed
mặc định: "true"-
Nếu đúng, các mục tiêu được tạo trong cấu hình Python 2 sẽ xuất hiện trong một thư mục gốc đầu ra có hậu tố "-py2", trong khi các mục tiêu được tạo cho Python 3 sẽ xuất hiện trong một thư mục gốc không có hậu tố liên quan đến Python. Điều này có nghĩa là symlink tiện lợi `bazel-bin` sẽ trỏ đến các mục tiêu Python 3 thay vì Python 2. Nếu bật lựa chọn này, bạn cũng nên bật `--incompatible_py3_is_default`.
Các thẻ:affects_outputs
,incompatible_change
--[no]incompatible_py3_is_default
mặc định: "true"-
Nếu đúng, các mục tiêu "py_binary" và "py_test" không đặt thuộc tính "python_version" (hoặc "default_python_version") sẽ mặc định là PY3 thay vì PY2. Nếu bạn đặt cờ này, bạn cũng nên đặt `--incompatible_py2_outputs_are_suffixed`.
Các thẻ:loading_and_analysis
,affects_outputs
,incompatible_change
--[no]incompatible_use_python_toolchains
mặc định: "true"-
Nếu bạn đặt thành true, các quy tắc Python gốc có thể thực thi sẽ sử dụng thời gian chạy Python do chuỗi công cụ Python chỉ định, thay vì thời gian chạy do các cờ cũ như --python_top cung cấp.
Thẻ:loading_and_analysis
,incompatible_change
--python_version=<PY2 or PY3>
mặc định: xem nội dung mô tả-
Chế độ phiên bản chính của Python, có thể là "PY2" hoặc "PY3". Xin lưu ý rằng chế độ này sẽ bị ghi đè bởi các mục tiêu "py_binary" và "py_test" (ngay cả khi các mục tiêu đó không chỉ định rõ phiên bản) nên thường không có nhiều lý do để cung cấp cờ này.
Thẻ:loading_and_analysis
,affects_outputs
- Các lựa chọn khác, không thuộc danh mục nào khác.:
--[no]cache_test_results
[-t
] mặc định: "auto"- Nếu được đặt thành "auto", Bazel sẽ chạy lại một kiểm thử nếu và chỉ nếu: (1) Bazel phát hiện thấy các thay đổi trong kiểm thử hoặc các phần phụ thuộc của kiểm thử, (2) kiểm thử được đánh dấu là bên ngoài, (3) nhiều lần chạy kiểm thử được yêu cầu bằng --runs_per_test hoặc(4) kiểm thử trước đó không thành công. Nếu được đặt thành "yes", Bazel sẽ lưu vào bộ nhớ đệm tất cả kết quả kiểm thử, ngoại trừ những kiểm thử được đánh dấu là bên ngoài. Nếu bạn đặt thành "no", Bazel sẽ không lưu vào bộ nhớ đệm bất kỳ kết quả kiểm thử nào.
--[no]experimental_cancel_concurrent_tests
mặc định: "false"-
Nếu đúng, Blaze sẽ huỷ các thử nghiệm đang chạy đồng thời trong lần chạy thành công đầu tiên. Tuỳ chọn này chỉ hữu ích khi kết hợp với --runs_per_test_detects_flakes.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_fetch_all_coverage_outputs
mặc định: "false"-
Nếu đúng, Bazel sẽ tìm nạp toàn bộ thư mục dữ liệu về mức độ phù hợp cho từng kiểm thử trong quá trình chạy mức độ phù hợp.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_generate_llvm_lcov
mặc định: "false"-
Nếu đúng, mức độ phù hợp cho clang sẽ tạo ra một báo cáo LCOV.
Thẻ:affects_outputs
,loading_and_analysis
,experimental
--[no]experimental_j2objc_header_map
mặc định: "true"-
Có tạo bản đồ tiêu đề J2ObjC song song với quá trình chuyển đổi J2ObjC hay không.
Thẻ:experimental
--[no]experimental_j2objc_shorter_header_path
mặc định: "false"-
Có tạo bằng đường dẫn tiêu đề ngắn hơn hay không (sử dụng "_ios" thay vì "_j2objc").
Thẻ:affects_outputs
,experimental
--experimental_java_classpath=<off, javabuilder or bazel>
mặc định: "javabuilder"- Cho phép giảm đường dẫn lớp để biên dịch Java.
--[no]experimental_limit_android_lint_to_android_constrained_java
mặc định: "false"-
Không có thao tác, chỉ giữ lại để tương thích ngược
Thẻ:affects_outputs
,experimental
--[no]experimental_run_android_lint_on_java_rules
mặc định: "false"-
Có xác thực các nguồn java_* hay không.
Thẻ:affects_outputs
,experimental
--[no]explicit_java_test_deps
mặc định: "false"- Chỉ định rõ ràng một phần phụ thuộc vào JUnit hoặc Hamcrest trong java_test thay vì vô tình lấy từ các deps của TestRunner. Hiện tại, tính năng này chỉ hoạt động với bazel.
--host_java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java mà các công cụ được thực thi trong quá trình tạo bản dựng sử dụng.
--host_javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để truyền đến javac khi tạo các công cụ được thực thi trong quá trình tạo.
--host_jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến máy ảo Java khi tạo các công cụ được thực thi trong quá trình tạo. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của mỗi mục tiêu java_binary.
--[no]incompatible_check_sharding_support
mặc định: "true"-
Nếu đúng, Bazel sẽ không thực hiện được một kiểm thử phân đoạn nếu trình chạy kiểm thử không cho biết rằng trình chạy này hỗ trợ phân đoạn bằng cách chạm vào tệp tại đường dẫn trong TEST_SHARD_STATUS_FILE. Nếu là false, trình chạy kiểm thử không hỗ trợ phân đoạn sẽ khiến tất cả các kiểm thử chạy trong mỗi phân đoạn.
Thẻ:incompatible_change
--[no]incompatible_exclusive_test_sandboxed
mặc định: "true"-
Nếu đúng, các thử nghiệm độc quyền sẽ chạy với chiến lược hộp cát. Thêm thẻ "local" để buộc chạy thử nghiệm độc quyền cục bộ
Thẻ:incompatible_change
--[no]incompatible_strict_action_env
mặc định: "false"-
Nếu đặt là true, Bazel sẽ sử dụng một môi trường có giá trị tĩnh cho PATH và không kế thừa LD_LIBRARY_PATH. Sử dụng --action_env=ENV_VARIABLE nếu bạn muốn kế thừa các biến môi trường cụ thể từ máy khách, nhưng lưu ý rằng việc này có thể ngăn chặn việc lưu vào bộ nhớ đệm trên nhiều người dùng nếu bạn sử dụng bộ nhớ đệm dùng chung.
Thẻ:loading_and_analysis
,incompatible_change
--j2objc_translation_flags=<comma-separated list of options>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến công cụ J2ObjC.
--java_debug
-
Khiến máy ảo Java của một bài kiểm thử Java phải chờ kết nối từ một trình gỡ lỗi tuân thủ JDWP (chẳng hạn như jdb) trước khi bắt đầu kiểm thử. Ngụ ý -test_output=streamed.
Mở rộng thành:
--test_arg=--wrapper_script_flag=--debug
--test_output=streamed
--test_strategy=exclusive
--test_timeout=9999
--nocache_test_results
--[no]java_deps
mặc định: "true"- Tạo thông tin về phần phụ thuộc (hiện tại là đường dẫn lớp thời gian biên dịch) cho mỗi mục tiêu Java.
--[no]java_header_compilation
mặc định: "true"- Biên dịch ijar trực tiếp từ nguồn.
--java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java
--java_launcher=<a build target label>
mặc định: xem nội dung mô tả- Trình chạy Java sẽ dùng khi tạo các tệp nhị phân Java. Nếu bạn đặt cờ này thành chuỗi trống, thì trình khởi chạy JDK sẽ được dùng. Thuộc tính "launcher" sẽ ghi đè cờ này.
--java_runtime_version=<a string>
mặc định: "local_jdk"- Phiên bản thời gian chạy Java
--javacopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn bổ sung để truyền đến javac.
--jvmopt=<a string>
nhiều mục đích sử dụng được tích luỹ- Các lựa chọn khác để chuyển đến máy ảo Java. Các lựa chọn này sẽ được thêm vào các lựa chọn khởi động VM của từng mục tiêu java_binary.
--legacy_main_dex_list_generator=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng tạo danh sách các lớp phải có trong dex chính khi biên dịch multidex cũ.
--optimizing_dexer=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định một tệp nhị phân để dùng cho việc lập chỉ mục dex mà không cần phân đoạn.
--plugin=<a build target label>
nhiều mục đích sử dụng được tích luỹ- Các trình bổ trợ cần dùng trong bản dựng. Hiện hoạt động với java_plugin.
--proguard_top=<a build target label>
mặc định: xem nội dung mô tả- Chỉ định phiên bản ProGuard sẽ dùng để xoá mã khi tạo một tệp nhị phân Java.
--proto_compiler=<a build target label>
mặc định: "@bazel_tools//tools/proto:protoc"-
Nhãn của trình biên dịch proto.
Thẻ:affects_outputs
,loading_and_analysis
--[no]proto_profile
mặc định: "true"- Có nên truyền profile_path đến trình biên dịch proto hay không.
Thẻ:affects_outputs
,loading_and_analysis
--proto_profile_path=<a build target label>
mặc định: xem nội dung mô tả-
Hồ sơ cần truyền đến trình biên dịch proto dưới dạng profile_path. Nếu bạn không đặt, nhưng --proto_profile là true (mặc định), thì sẽ suy ra đường dẫn từ --fdo_optimize.
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_cc=<a build target label>
default: "@bazel_tools//tools/proto:cc_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch proto C++
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_j2objc=<a build target label>
mặc định: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức j2objc
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_java=<a build target label>
mặc định: "@bazel_tools//tools/proto:java_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức Java
Thẻ:affects_outputs
,loading_and_analysis
--proto_toolchain_for_javalite=<a build target label>
mặc định: "@bazel_tools//tools/proto:javalite_toolchain"-
Nhãn của proto_lang_toolchain() mô tả cách biên dịch các giao thức JavaLite
Thẻ:affects_outputs
,loading_and_analysis
--protocopt=<a string>
nhiều mục đích sử dụng được tích luỹ-
Các lựa chọn bổ sung để truyền đến trình biên dịch protobuf.
Thẻ:affects_outputs
--[no]runs_per_test_detects_flakes
mặc định: "false"- Nếu đúng, mọi phân đoạn có ít nhất một lần chạy/thử nghiệm thành công và ít nhất một lần chạy/thử nghiệm thất bại sẽ có trạng thái FLAKY.
--shell_executable=<a path>
mặc định: xem nội dung mô tả-
Đường dẫn tuyệt đối đến tệp thực thi shell mà Bazel sẽ dùng. Nếu bạn không đặt biến này, nhưng biến môi trường BAZEL_SH được đặt trong lệnh gọi Bazel đầu tiên (khởi động một máy chủ Bazel), thì Bazel sẽ sử dụng biến đó. Nếu bạn không đặt cả hai, Bazel sẽ sử dụng đường dẫn mặc định được mã hoá cứng, tuỳ thuộc vào hệ điều hành mà Bazel chạy trên đó (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, tất cả các hệ điều hành khác: /bin/bash). Xin lưu ý rằng việc sử dụng một trình bao không tương thích với bash có thể dẫn đến lỗi bản dựng hoặc lỗi thời gian chạy của các tệp nhị phân đã tạo.
Thẻ:loading_and_analysis
--test_arg=<a string>
nhiều mục đích sử dụng được tích luỹ- Chỉ định các lựa chọn và đối số bổ sung cần được truyền đến tệp thực thi kiểm thử. Có thể dùng nhiều lần để chỉ định một số đối số. Nếu nhiều kiểm thử được thực thi, mỗi kiểm thử sẽ nhận được các đối số giống hệt nhau. Chỉ được dùng bằng lệnh "bazel test".
--test_filter=<a string>
mặc định: xem nội dung mô tả- Chỉ định một bộ lọc để chuyển tiếp đến khung kiểm thử. Dùng để giới hạn số lượng bài kiểm thử được chạy. Xin lưu ý rằng điều này không ảnh hưởng đến những mục tiêu được tạo.
--test_result_expiration=<an integer>
mặc định: "-1"- Tuỳ chọn này không được dùng nữa và không có hiệu lực.
--[no]test_runner_fail_fast
mặc định: "false"- Chuyển tiếp lựa chọn thất bại nhanh đến trình chạy kiểm thử. Trình chạy kiểm thử sẽ dừng thực thi khi gặp lỗi đầu tiên.
--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce>
mặc định: "explicit"- Chỉ định chiến lược phân đoạn kiểm thử: "explicit" để chỉ sử dụng tính năng phân đoạn nếu có thuộc tính BUILD "shard_count". "disabled" để không bao giờ sử dụng tính năng phân đoạn kiểm thử. "forced=k" để thực thi "k" phân đoạn để kiểm thử bất kể thuộc tính BUILD "shard_count".
--tool_java_language_version=<a string>
mặc định: ""- Phiên bản ngôn ngữ Java dùng để thực thi các công cụ cần thiết trong quá trình tạo
--tool_java_runtime_version=<a string>
default: "remotejdk_11"- Phiên bản thời gian chạy Java được dùng để thực thi các công cụ trong quá trình tạo
--[no]use_ijars
mặc định: "true"- Nếu được bật, lựa chọn này sẽ khiến quá trình biên dịch Java sử dụng các tệp jar giao diện. Điều này sẽ giúp tăng tốc độ biên dịch gia tăng, nhưng thông báo lỗi có thể khác.
Lựa chọn về phiên bản
- Các lựa chọn cho phép người dùng định cấu hình đầu ra dự kiến, ảnh hưởng đến giá trị của đầu ra, chứ không phải sự tồn tại của đầu ra:
--[no]gnu_format
mặc định: "false"-
Nếu được đặt, hãy ghi phiên bản vào stdout bằng cách sử dụng các quy ước được mô tả trong tiêu chuẩn GNU.
Thẻ:affects_outputs
,execution
- Lựa chọn này ảnh hưởng đến ngữ nghĩa của ngôn ngữ Starlark hoặc API bản dựng mà các tệp BUILD, tệp .bzl hoặc tệp WORKSPACE có thể truy cập.:
--[no]incompatible_use_plus_in_repo_names
mặc định: "true"-
Không có thao tác.
Thẻ:loading_and_analysis
Thẻ hiệu ứng của lựa chọn
unknown |
Tuỳ chọn này có hiệu ứng không xác định hoặc không có trong tài liệu. |
no_op |
Lựa chọn này hoàn toàn không có tác dụng. |
loses_incremental_state |
Việc thay đổi giá trị của lựa chọn này có thể gây ra tổn thất đáng kể về trạng thái gia tăng, làm chậm quá trình tạo. Trạng thái có thể bị mất do máy chủ khởi động lại hoặc do phần lớn biểu đồ phần phụ thuộc không hợp lệ. |
changes_inputs |
Tuỳ chọn này chủ động thay đổi các đầu vào mà bazel xem xét cho bản dựng, chẳng hạn như các hạn chế về hệ thống tệp, phiên bản kho lưu trữ hoặc các lựa chọn khác. |
affects_outputs |
Tuỳ chọn này ảnh hưởng đến đầu ra của bazel. Thẻ này có phạm vi rộng, có thể bao gồm các ảnh hưởng gián tiếp và không chỉ định loại đầu ra mà thẻ này ảnh hưởng. |
build_file_semantics |
Lựa chọn này ảnh hưởng đến ngữ nghĩa của các tệp BUILD hoặc .bzl. |
bazel_internal_configuration |
Lựa chọn này ảnh hưởng đến các chế độ cài đặt của cơ chế bazel-internal. Bản thân thẻ này không có nghĩa là các cấu phần phần mềm của bản dựng sẽ bị ảnh hưởng. |
loading_and_analysis |
Lựa chọn này ảnh hưởng đến quá trình tải và phân tích các phần phụ thuộc, cũng như quá trình tạo biểu đồ phần phụ thuộc. |
execution |
Lựa chọn này ảnh hưởng đến giai đoạn thực thi, chẳng hạn như các lựa chọn liên quan đến hộp cát hoặc thực thi từ xa. |
host_machine_resource_optimizations |
Lựa chọn này kích hoạt một quy trình tối ưu hoá có thể dành riêng cho từng máy và không đảm bảo hoạt động trên mọi máy. Việc tối ưu hoá có thể bao gồm việc đánh đổi với các khía cạnh khác của hiệu suất, chẳng hạn như chi phí bộ nhớ hoặc CPU. |
eagerness_to_exit |
Lựa chọn này thay đổi mức độ sẵn sàng của bazel khi thoát khỏi một lỗi, trong đó có lựa chọn tiếp tục mặc dù gặp lỗi và kết thúc lệnh gọi. |
bazel_monitoring |
Tuỳ chọn này được dùng để theo dõi hành vi và hiệu suất của bazel. |
terminal_output |
Tuỳ chọn này ảnh hưởng đến đầu ra của bazel trên thiết bị đầu cuối. |
action_command_lines |
Tuỳ chọn này thay đổi đối số dòng lệnh của một hoặc nhiều thao tác xây dựng. |
test_runner |
Tuỳ chọn này thay đổi môi trường testrunner của bản dựng. |
Thẻ siêu dữ liệu không bắt buộc
experimental |
Tuỳ chọn này kích hoạt một tính năng thử nghiệm mà không có gì đảm bảo về chức năng. |
incompatible_change |
Lựa chọn này sẽ kích hoạt một thay đổi có thể gây lỗi. Sử dụng lựa chọn này để kiểm tra xem bạn đã sẵn sàng di chuyển hay chưa hoặc để có quyền truy cập sớm vào tính năng mới |
deprecated |
Lựa chọn này không còn được dùng nữa. Có thể tính năng mà thông báo này ảnh hưởng đã bị ngừng sử dụng hoặc bạn nên dùng một phương thức khác để cung cấp thông tin. |
immutable |
Bạn không thể thay đổi lựa chọn này trong quá trình chuyển đổi. |