การอ้างอิงบรรทัดคำสั่ง

bazel [<startup options>] <command> [<args>]
หรือ
bazel [<startup options>] <command> [<args>] -- [<target patterns>]
ดูไวยากรณ์ของรูปแบบเป้าหมายได้ในคู่มือผู้ใช้

ไวยากรณ์ของตัวเลือก

ส่งตัวเลือกไปยัง Bazel ได้หลายวิธี ตัวเลือกที่ต้องมีค่า สามารถส่งได้โดยใช้เครื่องหมายเท่ากับหรือเว้นวรรค

--<option>=<value>
--<option> <value>
ตัวเลือกบางรายการมีรูปแบบย่อแบบอักขระเดียว ในกรณีนี้ รูปแบบย่อ ต้องส่งพร้อมกับขีดเดียวและช่องว่าง
-<short_form> <value>

คุณเปิดใช้ตัวเลือกบูลีนได้โดยทำดังนี้

--<option>
--<option>=[true|yes|1]
และปิดใช้ดังนี้
--no<option>
--<option>=[false|no|0]

โดยปกติแล้ว ตัวเลือกแบบ 3 สถานะจะตั้งค่าเป็นอัตโนมัติโดยค่าเริ่มต้น และสามารถ บังคับให้เปิดใช้ได้ดังนี้

--<option>=[true|yes|1]
หรือปิดใช้โดยบังคับดังนี้
--no<option>
--<option>=[false|no|0]

คำสั่ง

aquery วิเคราะห์เป้าหมายที่ระบุและค้นหากราฟการดำเนินการ
build สร้างเป้าหมายที่ระบุ
canonicalize-flags จัดรูปแบบรายการตัวเลือก Bazel
clean นำไฟล์เอาต์พุตออกและหยุดเซิร์ฟเวอร์ (หากต้องการ)
coverage สร้างรายงานความครอบคลุมของโค้ดสำหรับเป้าหมายการทดสอบที่ระบุ
cquery โหลด วิเคราะห์ และค้นหาเป้าหมายที่ระบุพร้อมการกำหนดค่า
dump ส่งออกสถานะภายในของกระบวนการเซิร์ฟเวอร์ Bazel
fetch ดึงข้อมูลที่เก็บภายนอกซึ่งเป็นข้อกำหนดเบื้องต้นของเป้าหมาย
help พิมพ์ความช่วยเหลือสำหรับคำสั่งหรือดัชนี
info แสดงข้อมูลรันไทม์เกี่ยวกับเซิร์ฟเวอร์ Bazel
license พิมพ์ใบอนุญาตของซอฟต์แวร์นี้
mobile-install ติดตั้งเป้าหมายไปยังอุปกรณ์เคลื่อนที่
mod ค้นหากราฟทรัพยากร Dependency ภายนอกของ Bzlmod
print_action พิมพ์อาร์กิวเมนต์บรรทัดคำสั่งสำหรับการคอมไพล์ไฟล์
query ดำเนินการค้นหากราฟทรัพยากร Dependency
run เรียกใช้เป้าหมายที่ระบุ
shutdown หยุดเซิร์ฟเวอร์ Bazel
test สร้างและเรียกใช้เป้าหมายการทดสอบที่ระบุ
vendor ดึงข้อมูลที่เก็บภายนอกไปยังโฟลเดอร์ที่ระบุโดยแฟล็ก --vendor_dir
version พิมพ์ข้อมูลเวอร์ชันสำหรับ Bazel

ตัวเลือกการเริ่มต้น

ตัวเลือกที่ปรากฏก่อนคำสั่งและไคลเอ็นต์แยกวิเคราะห์
--[no]autodetect_server_javabase ค่าเริ่มต้น: "จริง"

เมื่อส่ง --noautodetect_server_javabase Bazel จะไม่กลับไปใช้ JDK ในเครื่องเพื่อเรียกใช้เซิร์ฟเวอร์ Bazel แต่จะออกแทน

แท็ก affects_outputs, loses_incremental_state

--[no]batch ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ Bazel จะทำงานเป็นเพียงกระบวนการไคลเอ็นต์ที่ไม่มีเซิร์ฟเวอร์แทนที่จะเป็นโหมดไคลเอ็นต์/เซิร์ฟเวอร์มาตรฐาน เลิกใช้งานแล้วและจะนำออก โปรดปิดเซิร์ฟเวอร์อย่างชัดเจนหากไม่ต้องการให้มีเซิร์ฟเวอร์ที่ไม่ได้ใช้งาน

แท็ก loses_incremental_state, bazel_internal_configuration, deprecated

--[no]batch_cpu_scheduling ค่าเริ่มต้น: "false"

ใน Linux เท่านั้น ให้ใช้การจัดกำหนดการ CPU แบบ "batch" สำหรับ Blaze นโยบายนี้มีประโยชน์สำหรับภาระงานที่ไม่มีการโต้ตอบ แต่ไม่ต้องการลดค่า nice ดู "man 2 sched_setscheduler" หากเป็นเท็จ Bazel จะไม่เรียกใช้ฟังก์ชันของระบบ

แท็ก host_machine_resource_optimizations

--bazelrc=<path> มีการสะสมการใช้งานหลายครั้ง

ตำแหน่งของไฟล์ .bazelrc ของผู้ใช้ที่มีค่าเริ่มต้นของตัวเลือก Bazel /dev/null ระบุว่าระบบจะไม่สนใจ--bazelrc ทั้งหมดในอนาคต ซึ่งมีประโยชน์ในการปิดใช้การค้นหาไฟล์ rc ของผู้ใช้ เช่น ในบิลด์ที่เผยแพร่ นอกจากนี้ คุณยังระบุตัวเลือกนี้ได้หลายครั้งด้วย เช่น --bazelrc=x.rc --bazelrc=y.rc --bazelrc=/dev/null --bazelrc=z.rc

  1. ระบบจะอ่าน x.rc และ y.rc
  2. ระบบจะไม่สนใจ z.rc เนื่องจากมี /dev/null ก่อนหน้า หากไม่ได้ระบุ Bazel จะใช้ไฟล์ .bazelrc แรกที่พบใน 2 ตำแหน่งต่อไปนี้ ได้แก่ ไดเรกทอรีพื้นที่ทำงานและไดเรกทอรีหลักของผู้ใช้ หมายเหตุ: ตัวเลือกบรรทัดคำสั่งจะแทนที่ตัวเลือกใน bazelrc เสมอ

แท็ก changes_inputs

--[no]block_for_lock ค่าเริ่มต้น: "จริง"

เมื่อส่ง --noblock_for_lock Bazel จะไม่รอให้คำสั่งที่กำลังทำงานเสร็จสมบูรณ์ แต่จะออกทันที

แท็ก eagerness_to_exit

--[no]client_debug ค่าเริ่มต้น: "false"

หากเป็นจริง ให้บันทึกข้อมูลการแก้ไขข้อบกพร่องจากไคลเอ็นต์ไปยัง stderr การเปลี่ยนตัวเลือกนี้จะไม่ทำให้เซิร์ฟเวอร์รีสตาร์ท

แท็ก affects_outputs, bazel_monitoring

--connect_timeout_secs=<an integer> ค่าเริ่มต้น: "30"

ระยะเวลาที่ไคลเอ็นต์รอการพยายามเชื่อมต่อกับเซิร์ฟเวอร์แต่ละครั้ง

แท็ก bazel_internal_configuration

--digest_function=<hash function> ค่าเริ่มต้น: ดูคำอธิบาย

ฟังก์ชันแฮชที่จะใช้เมื่อคำนวณไดเจสต์ของไฟล์

แท็ก loses_incremental_state, bazel_internal_configuration

--experimental_cgroup_parent=<path> ค่าเริ่มต้น: ดูคำอธิบาย

Cgroup ที่จะเริ่มเซิร์ฟเวอร์ Bazel เป็นเส้นทางแบบสัมบูรณ์ ระบบจะเริ่มกระบวนการเซิร์ฟเวอร์ใน Cgroup ที่ระบุสำหรับตัวควบคุมที่รองรับแต่ละตัว เช่น หากค่าของแฟล็กนี้คือ /build/bazel และตัวควบคุม CPU และหน่วยความจำติดตั้งอยู่ที่ /sys/fs/cgroup/cpu และ /sys/fs/cgroup/memory ตามลำดับ เซิร์ฟเวอร์จะเริ่มต้นใน cgroup /sys/fs/cgroup/cpu/build/bazel และ /sys/fs/cgroup/memory/build/bazel ซึ่งจะไม่ถือเป็นข้อผิดพลาดหากตัวควบคุมอย่างน้อย 1 รายการเขียน cgroup ที่ระบุไม่ได้ ตัวเลือกนี้จะไม่มีผลกับแพลตฟอร์มที่ไม่รองรับ cgroup

แท็ก bazel_monitoring, execution

--[no]experimental_run_in_user_cgroup ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเรียกใช้เซิร์ฟเวอร์ Bazel ด้วย systemd-run และผู้ใช้จะเป็นเจ้าของ cgroup โดยแฟล็กนี้จะมีผลใน Linux เท่านั้น

แท็ก bazel_monitoring, execution

--failure_detail_out=<path> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ จะระบุตำแหน่งที่จะเขียนข้อความ protobuf failure_detail หากเซิร์ฟเวอร์เกิดข้อผิดพลาดและรายงานผ่าน gRPC ไม่ได้ตามปกติ มิฉะนั้น ตำแหน่งจะเป็น ${OUTPUT_BASE}/failure_detail.rawproto

แท็ก affects_outputs, loses_incremental_state

--[no]home_rc ค่าเริ่มต้น: "จริง"

เลือกว่าจะค้นหาไฟล์ bazelrc หลักที่ $HOME/.bazelrc หรือไม่

แท็ก changes_inputs

--[no]idle_server_tasks ค่าเริ่มต้น: "จริง"

เรียกใช้ System.gc() เมื่อเซิร์ฟเวอร์ไม่มีการใช้งาน

แท็ก loses_incremental_state, host_machine_resource_optimizations

--[no]ignore_all_rc_files ค่าเริ่มต้น: "false"

ปิดใช้ไฟล์ rc ทั้งหมด ไม่ว่าค่าของแฟล็กอื่นๆ ที่แก้ไข rc จะเป็นอย่างไร แม้ว่าแฟล็กเหล่านี้จะปรากฏในภายหลังในรายการตัวเลือกการเริ่มต้นก็ตาม

แท็ก changes_inputs

--io_nice_level={-1,0,1,2,3,4,5,6,7} ค่าเริ่มต้น: "-1"

ใน Linux เท่านั้น ให้ตั้งค่าระดับตั้งแต่ 0-7 สำหรับการจัดกำหนดการ IO แบบเต็มความสามารถโดยใช้การเรียกใช้ระบบ sys_ioprio_set โดย 0 คือลำดับความสำคัญสูงสุด และ 7 คือลำดับความสำคัญต่ำสุด ตัวกำหนดเวลาก่อนหน้าอาจพิจารณาเฉพาะลำดับความสำคัญสูงสุด 4 เท่านั้น หากตั้งค่าเป็นค่าลบ Bazel จะไม่เรียกใช้ฟังก์ชันของระบบ

แท็ก host_machine_resource_optimizations

--local_startup_timeout_secs=<an integer> ค่าเริ่มต้น: "120"

ระยะเวลาสูงสุดที่ไคลเอ็นต์รอเพื่อเชื่อมต่อกับเซิร์ฟเวอร์

แท็ก bazel_internal_configuration

--macos_qos_class=<a string> ค่าเริ่มต้น: "default"

ตั้งค่าคลาสบริการ QoS ของเซิร์ฟเวอร์ Bazel เมื่อเรียกใช้ใน macOS โดยแฟล็กนี้จะไม่มีผลกับแพลตฟอร์มอื่นๆ ทั้งหมด แต่รองรับเพื่อให้มั่นใจว่าไฟล์ rc สามารถแชร์ระหว่างแพลตฟอร์มต่างๆ ได้โดยไม่ต้องเปลี่ยนแปลง ค่าที่เป็นไปได้ ได้แก่ user-interactive, user-initiated, default, utility และ background

แท็ก host_machine_resource_optimizations

--max_idle_secs=<integer> ค่าเริ่มต้น: "10800"

จำนวนวินาทีที่เซิร์ฟเวอร์บิลด์จะรอโดยไม่มีการใช้งานก่อนที่จะปิด 0 หมายความว่าเซิร์ฟเวอร์จะไม่ปิด โดยจะอ่านเฉพาะเมื่อเซิร์ฟเวอร์เริ่มต้นเท่านั้น การเปลี่ยนตัวเลือกนี้จะไม่ทำให้เซิร์ฟเวอร์รีสตาร์ท

แท็ก eagerness_to_exit, loses_incremental_state

--output_base=<path> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ จะระบุตำแหน่งเอาต์พุตที่ระบบจะเขียนเอาต์พุตการสร้างทั้งหมด มิฉะนั้น ตำแหน่งจะเป็น ${OUTPUT_ROOT}/blaze${USER}/${MD5_OF_WORKSPACE_ROOT} หมายเหตุ: หากคุณระบุตัวเลือกอื่นจากการเรียกใช้ Bazel ครั้งหนึ่งไปยังครั้งถัดไปสำหรับค่านี้ คุณอาจต้องเริ่มต้นเซิร์ฟเวอร์ Bazel ใหม่เพิ่มเติม Bazel จะเริ่มเซิร์ฟเวอร์ 1 ตัวต่อเอาต์พุตเบสที่ระบุ โดยปกติแล้วจะมีฐานเอาต์พุต 1 ฐานต่อพื้นที่ทำงาน อย่างไรก็ตาม ตัวเลือกนี้ช่วยให้คุณมีฐานเอาต์พุตหลายฐานต่อพื้นที่ทำงานได้ และด้วยเหตุนี้จึงเรียกใช้การสร้างหลายรายการสำหรับไคลเอ็นต์เดียวกันในเครื่องเดียวกันพร้อมกันได้ ดูวิธีปิดเซิร์ฟเวอร์ Bazel ได้ที่ "bazel help shutdown"

แท็ก affects_outputs, loses_incremental_state

--output_user_root=<path> ค่าเริ่มต้น: ดูคำอธิบาย

ไดเรกทอรีเฉพาะผู้ใช้ที่เขียนเอาต์พุตการสร้างทั้งหมด โดยค่าเริ่มต้นจะเป็นฟังก์ชันของ $USER แต่การระบุค่าคงที่จะช่วยให้ผู้ใช้ที่ทำงานร่วมกันแชร์เอาต์พุตการสร้างได้

แท็ก affects_outputs, loses_incremental_state

--[no]preemptible ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะขัดจังหวะคำสั่งได้หากมีการเริ่มคำสั่งอื่น

แท็ก eagerness_to_exit

--[no]quiet ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะไม่แสดงข้อความแจ้งข้อมูลในคอนโซล แต่จะแสดงเฉพาะข้อผิดพลาด การเปลี่ยนตัวเลือกนี้จะไม่ทำให้เซิร์ฟเวอร์รีสตาร์ท

แท็ก affects_outputs, bazel_monitoring

--server_jvm_out=<path> ค่าเริ่มต้น: ดูคำอธิบาย

ตำแหน่งที่จะเขียนเอาต์พุตของ JVM ของเซิร์ฟเวอร์ หากไม่ได้ตั้งค่า ระบบจะใช้ตำแหน่งใน output_base เป็นค่าเริ่มต้น

แท็ก affects_outputs, loses_incremental_state

--[no]shutdown_on_low_sys_mem ค่าเริ่มต้น: "false"

หากตั้งค่า max_idle_secs และเซิร์ฟเวอร์บิลด์ไม่ได้ใช้งานมาระยะหนึ่ง ให้ปิดเซิร์ฟเวอร์เมื่อระบบมี RAM ที่มีพื้นที่ว่างเหลือน้อย Linux และ MacOS เท่านั้น

แท็ก eagerness_to_exit, loses_incremental_state

--[no]system_rc ค่าเริ่มต้น: "จริง"

จะค้นหา bazelrc ทั่วทั้งระบบหรือไม่

แท็ก changes_inputs

--[no]unlimit_coredumps ค่าเริ่มต้น: "false"

เพิ่มขีดจำกัดของ Coredump แบบ Soft เป็นขีดจำกัดแบบ Hard เพื่อให้สร้าง Coredump ของเซิร์ฟเวอร์ (รวมถึง JVM) และไคลเอ็นต์ได้ภายใต้เงื่อนไขทั่วไป ใส่ Flag นี้ใน bazelrc เพียงครั้งเดียวแล้วลืมไปเลย เพื่อให้คุณได้รับ Core Dump เมื่อพบเงื่อนไขที่ทริกเกอร์

แท็ก bazel_internal_configuration

หากเป็นจริง ระบบจะสร้างลิงก์สัญลักษณ์จริงใน Windows แทนการคัดลอกไฟล์ ต้องเปิดใช้โหมดนักพัฒนาแอปของ Windows และใช้ Windows 10 เวอร์ชัน 1703 ขึ้นไป

แท็ก bazel_internal_configuration

--[no]workspace_rc ค่าเริ่มต้น: "จริง"

จะค้นหาไฟล์ bazelrc ของพื้นที่ทำงานที่ $workspace/.bazelrc หรือไม่

แท็ก changes_inputs

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--host_jvm_args=<jvm_arg> มีการสะสมการใช้งานหลายครั้ง

Flags ที่จะส่งไปยัง JVM ที่เรียกใช้ Blaze

--host_jvm_debug

ตัวเลือกที่สะดวกในการเพิ่มแฟล็กการเริ่มต้น JVM เพิ่มเติม ซึ่งทำให้ JVM รอในระหว่างการเริ่มต้นจนกว่าคุณจะเชื่อมต่อจากดีบักเกอร์ที่รองรับ JDWP (เช่น Eclipse) ไปยังพอร์ต 5005

ขยายเป็น
  --host_jvm_args=-agentlib:jdwp=transport=dt_socket,server=y,address=5005

--server_javabase=<jvm path> ค่าเริ่มต้น: ""

เส้นทางไปยัง JVM ที่ใช้เรียกใช้ Bazel เอง

ตัวเลือกที่ใช้ร่วมกันในคำสั่งทั้งหมด

ตัวเลือกที่ปรากฏก่อนคำสั่งและไคลเอ็นต์แยกวิเคราะห์
--distdir=<a path> มีการสะสมการใช้งานหลายครั้ง

สถานที่เพิ่มเติมในการค้นหาไฟล์เก็บถาวรก่อนเข้าถึงเครือข่ายเพื่อดาวน์โหลด

แท็ก bazel_internal_configuration

หากตั้งค่าไว้ แคชของที่เก็บจะลิงก์แบบฮาร์ดลิงก์ไฟล์ในกรณีที่แคชตรงกันแทนที่จะคัดลอก ซึ่งมีไว้เพื่อประหยัดพื้นที่ในดิสก์

แท็ก bazel_internal_configuration

--experimental_repository_downloader_retries=<an integer> ค่าเริ่มต้น: "5"

จำนวนครั้งสูงสุดที่พยายามลองดาวน์โหลดซ้ำเมื่อเกิดข้อผิดพลาด หากตั้งค่าเป็น 0 ระบบจะปิดใช้การลองใหม่

แท็ก experimental

--experimental_scale_timeouts=<a double> ค่าเริ่มต้น: "1.0"

ปรับการหมดเวลาทั้งหมดในกฎที่เก็บ Starlark ตามปัจจัยนี้ ด้วยวิธีนี้ คุณจึงทำให้ที่เก็บภายนอกทำงานบนเครื่องที่ช้ากว่าที่ผู้เขียนกฎคาดไว้ได้โดยไม่ต้องเปลี่ยนซอร์สโค้ด

แท็ก bazel_internal_configuration, experimental

--http_connector_attempts=<an integer> ค่าเริ่มต้น: "8"

จำนวนครั้งสูงสุดที่พยายามดาวน์โหลดผ่าน http

แท็ก bazel_internal_configuration

--http_connector_retry_max_timeout=<An immutable length of time.> ค่าเริ่มต้น: "0s"

ระยะหมดเวลาสูงสุดสำหรับการลองดาวน์โหลดผ่าน HTTP ซ้ำ ค่า 0 หมายความว่าไม่ได้กำหนดระยะหมดเวลาสูงสุด

แท็ก bazel_internal_configuration

--http_max_parallel_downloads=<an integer> ค่าเริ่มต้น: "8"

จำนวนการดาวน์โหลดผ่าน HTTP พร้อมกันสูงสุด

แท็ก bazel_internal_configuration

--http_timeout_scaling=<a double> ค่าเริ่มต้น: "1.0"

ปรับระยะหมดเวลาทั้งหมดที่เกี่ยวข้องกับการดาวน์โหลดผ่าน http ตามปัจจัยที่ระบุ

แท็ก bazel_internal_configuration

--repo_contents_cache=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตำแหน่งของแคชเนื้อหาที่เก็บ ซึ่งมีไดเรกทอรีที่เก็บที่ดึงข้อมูลมาซึ่งแชร์ได้ในพื้นที่ทำงาน สตริงว่างเป็นอาร์กิวเมนต์จะขอให้ปิดใช้แคชเนื้อหาของที่เก็บ ไม่เช่นนั้นระบบจะใช้ค่าเริ่มต้นของ "<--repository_cache>/contents" โปรดทราบว่าการตั้งค่า "--repository_cache=" จะปิดใช้แคชเนื้อหาของ Repo โดยค่าเริ่มต้นด้วย เว้นแต่จะตั้งค่า "--repo_contents_cache=<some_path>" ด้วย

แท็ก bazel_internal_configuration

--repo_contents_cache_gc_idle_delay=<An immutable length of time.> ค่าเริ่มต้น: "5m"

ระบุระยะเวลาที่เซิร์ฟเวอร์ต้องไม่มีการใช้งานก่อนที่จะมีการล้างข้อมูล ในแคชเนื้อหารีโป

แท็ก bazel_internal_configuration

--repo_contents_cache_gc_max_age=<An immutable length of time.> ค่าเริ่มต้น: "14d"

ระบุระยะเวลาที่รายการในแคชเนื้อหารีโปสามารถไม่มีการใช้งานก่อนที่จะมีการล้างข้อมูล หากตั้งค่าเป็น 0 ระบบจะรวบรวมเฉพาะรายการที่ซ้ำกัน

แท็ก bazel_internal_configuration

--repository_cache=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตำแหน่งแคชของค่าที่ดาวน์โหลดซึ่งได้มาในระหว่างการดึงข้อมูลที่เก็บภายนอก สตริงว่างเป็นอาร์กิวเมนต์จะขอให้ปิดใช้แคช มิฉะนั้นระบบจะใช้ค่าเริ่มต้นของ "<--output_user_root>/cache/repos/v1"

แท็ก bazel_internal_configuration

--[no]repository_disable_download ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ จะไม่อนุญาตให้ดาวน์โหลดโดยใช้ ctx.download{,_and_extract} ในระหว่างการดึงข้อมูลที่เก็บ โปรดทราบว่าการเข้าถึงเครือข่ายไม่ได้ถูกปิดใช้โดยสมบูรณ์ ctx.execute ยังคงเรียกใช้ไฟล์ที่เรียกใช้งานได้โดยพลการซึ่งเข้าถึงอินเทอร์เน็ตได้

แท็ก bazel_internal_configuration

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--experimental_ui_max_stdouterr_bytes=<an integer in (-1)-1073741819 range> ค่าเริ่มต้น: "1048576"

ขนาดสูงสุดของไฟล์ stdout / stderr ที่จะพิมพ์ไปยังคอนโซล -1 หมายถึงไม่มีขีดจำกัด

แท็ก execution

--gc_churning_threshold=<an integer in 0-100 range> ค่าเริ่มต้น: "100"

หาก Blaze ใช้เวลาจริงของ Invocation ในการทำ GC แบบเต็มอย่างน้อยตามเปอร์เซ็นต์นี้เมื่อใดก็ตามหลังจากที่ Invocation ทำงานมาอย่างน้อย 1 นาที Blaze จะหยุดทำงานและล้มเหลวเนื่องจาก OOM ค่า 100 หมายความว่าไม่ยอมแพ้ด้วยเหตุผลนี้

แท็ก host_machine_resource_optimizations

--gc_churning_threshold_if_multiple_top_level_targets=<an integer> ค่าเริ่มต้น: "-1"

หากตั้งค่าเป็นค่าใน [0, 100] และนี่คือคำสั่งที่ใช้เป้าหมายระดับบนสุด (เช่น build แต่ไม่ใช่ query) และมีเป้าหมายระดับบนสุดดังกล่าวหลายรายการ จะลบล้าง --gc_churning_threshold มีประโยชน์ในการกำหนดค่าลักษณะการทำงานของ OOM ที่ดุดันมากขึ้น (เช่น ค่าที่ต่ำกว่า --gc_churning_threshold) เมื่อมีเป้าหมายระดับบนสุดหลายรายการ เพื่อให้ผู้เรียกใช้ Bazel แยกและลองอีกครั้งได้ในขณะที่ยังคงมีลักษณะการทำงานที่ดุดันน้อยกว่าเมื่อมีเป้าหมายระดับบนสุดรายการเดียว

แท็ก host_machine_resource_optimizations

--gc_thrashing_threshold=<an integer in 0-100 range> ค่าเริ่มต้น: "100"

เปอร์เซ็นต์ของพื้นที่ที่ใช้ (0-100) ซึ่งสูงกว่าที่ GcThrashingDetector พิจารณาเหตุการณ์แรงดันหน่วยความจำเทียบกับขีดจำกัด (--gc_thrashing_limits) หากตั้งค่าเป็น 100 ระบบจะปิดใช้ GcThrashingDetector

แท็ก host_machine_resource_optimizations

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--[no]incompatible_enable_proto_toolchain_resolution ค่าเริ่มต้น: "false"

หากเป็นจริง กฎภาษาโปรโตคอลจะกำหนด Toolchain จากที่เก็บ Protobuf

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--bep_maximum_open_remote_upload_files=<an integer> ค่าเริ่มต้น: "-1"

จำนวนไฟล์ที่เปิดสูงสุดที่อนุญาตในระหว่างการอัปโหลดอาร์ติแฟกต์ BEP

แท็ก affects_outputs

--remote_download_all

ดาวน์โหลดเอาต์พุตระยะไกลทั้งหมดไปยังเครื่องในพื้นที่ แฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=all

ขยายเป็น
  --remote_download_outputs=all

แท็ก affects_outputs

--remote_download_minimal

ไม่ดาวน์โหลดเอาต์พุตการสร้างระยะไกลไปยังเครื่อง แฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=minimal

ขยายเป็น
  --remote_download_outputs=minimal

แท็ก affects_outputs

--remote_download_outputs=<all, minimal or toplevel> default: "toplevel"

หากตั้งค่าเป็น "น้อยที่สุด" ระบบจะไม่ดาวน์โหลดเอาต์พุตการบิลด์ระยะไกลไปยังเครื่องในเครื่อง ยกเว้นเอาต์พุตที่การกระทำในเครื่องกำหนดไว้ หากตั้งค่าเป็น "toplevel" จะทํางานเหมือน "minimal" ยกเว้นว่าจะดาวน์โหลดเอาต์พุตของเป้าหมายระดับบนสุดไปยังเครื่องภายในระบบด้วย ทั้ง 2 ตัวเลือกช่วยลดเวลาในการสร้างได้อย่างมากหากแบนด์วิดท์ของเครือข่ายเป็นคอขวด

แท็ก affects_outputs

สร้างลิงก์สัญลักษณ์แทนการดาวน์โหลดเอาต์พุตของบิลด์ระยะไกลไปยังเครื่องภายใน คุณระบุเป้าหมายของลิงก์สัญลักษณ์ได้ในรูปแบบของสตริงเทมเพลต สตริงเทมเพลตนี้อาจมี {hash} และ {size_bytes} ซึ่งจะขยายเป็นแฮชของออบเจ็กต์และขนาดในหน่วยไบต์ตามลำดับ ตัวอย่างเช่น ลิงก์สัญลักษณ์เหล่านี้อาจชี้ไปยังระบบไฟล์ FUSE ที่โหลดออบเจ็กต์จาก CAS ตามต้องการ

แท็ก affects_outputs

--remote_download_toplevel

ดาวน์โหลดเฉพาะเอาต์พุตระยะไกลของเป้าหมายระดับบนสุดไปยังเครื่องในพื้นที่ โดยแฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=toplevel

ขยายเป็น
  --remote_download_outputs=toplevel

แท็ก affects_outputs

--repo_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมให้พร้อมใช้งานสำหรับกฎของที่เก็บเท่านั้น โปรดทราบว่ากฎของที่เก็บจะเห็นสภาพแวดล้อมทั้งหมดอยู่แล้ว แต่ในลักษณะนี้จะตั้งค่าตัวแปรผ่าน Flag ของบรรทัดคำสั่งและรายการ <code>.bazelrc</code> ได้ คุณสามารถใช้ไวยากรณ์พิเศษ <code>=NAME</code> เพื่อยกเลิกการตั้งค่าตัวแปรอย่างชัดเจน

แท็ก action_command_lines

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]allow_experimental_loads ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้แสดงเฉพาะคำเตือนแทนข้อผิดพลาดสำหรับการโหลด .bzls ที่เป็นเวอร์ชันทดลอง

แท็ก build_file_semantics

--[no]check_bzl_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดเกี่ยวกับระดับการเข้าถึงการโหลด .bzl จะลดระดับเป็นคำเตือน

แท็ก build_file_semantics

--[no]incompatible_enforce_starlark_utf8 ค่าเริ่มต้น: "warning"

หากเปิดใช้ (หรือตั้งค่าเป็น "error") จะล้มเหลวหากไฟล์ Starlark ไม่ได้เข้ารหัส UTF-8 หากตั้งค่าเป็น "คำเตือน" ให้แสดงคำเตือนแทน หากตั้งค่าเป็น "ปิด" Bazel จะถือว่าไฟล์ Starlark เข้ารหัสแบบ UTF-8 แต่จะไม่ยืนยันสมมติฐานนี้ โปรดทราบว่าไฟล์ Starlark ที่ไม่ได้เข้ารหัส UTF-8 อาจทำให้ Bazel ทำงานไม่สอดคล้องกัน

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]experimental_bzl_visibility ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะเพิ่มฟังก์ชัน visibility() ที่ไฟล์ .bzl อาจเรียกใช้ในระหว่างการประเมินระดับบนสุดเพื่อตั้งค่าระดับการมองเห็นสำหรับวัตถุประสงค์ของคำสั่ง load()

แท็ก loading_and_analysis, experimental

--[no]experimental_cc_shared_library ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" แอตทริบิวต์ของกฎและเมธอด Starlark API ที่จำเป็นสำหรับกฎ cc_shared_library จะพร้อมใช้งาน

แท็ก build_file_semantics, loading_and_analysis, experimental

--[no]experimental_disable_external_package ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" แพ็กเกจ //external ที่สร้างขึ้นโดยอัตโนมัติจะใช้งานไม่ได้อีกต่อไป Bazel จะยังคงแยกวิเคราะห์ไฟล์ "external/BUILD" ไม่ได้ แต่ glob ที่เข้าถึง external/ จากแพ็กเกจที่ไม่มีชื่อจะใช้งานได้

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_dormant_deps ค่าเริ่มต้น: "false"

หากตั้งค่าเป็นจริง ระบบจะอนุญาตให้ใช้ attr.label(materializer=), attr(for_dependency_resolution=), attr.dormant_label(), attr.dormant_label_list() และ rule(for_dependency_resolution=)

แท็ก build_file_semantics, experimental

--[no]experimental_enable_android_migration_apis ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" จะเปิดใช้ API ที่จำเป็นต่อการรองรับการย้ายข้อมูล Android Starlark

แท็ก build_file_semantics

--[no]experimental_enable_first_class_macros ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" จะเปิดใช้โครงสร้าง macro() สำหรับการกำหนดมาโครสัญลักษณ์

แท็ก build_file_semantics

--[no]experimental_enable_scl_dialect ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" จะใช้ไฟล์ .scl ในคำสั่ง load() ได้

แท็ก build_file_semantics

--[no]experimental_enable_starlark_set ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เปิดใช้ประเภทข้อมูลชุดและตัวสร้าง set() ใน Starlark

แท็ก build_file_semantics, experimental

--[no]experimental_google_legacy_api ค่าเริ่มต้น: "false"

หากตั้งค่าเป็นจริง จะแสดง API การสร้าง Starlark ที่เป็นเวอร์ชันทดลองจำนวนหนึ่งซึ่งเกี่ยวข้องกับโค้ดเดิมของ Google

แท็ก loading_and_analysis, experimental

--[no]experimental_isolated_extension_usages ค่าเริ่มต้น: "false"

หากเป็นจริง จะเปิดใช้พารามิเตอร์ <code>isolate</code> ในฟังก์ชัน <a href="https://bazel.build/rules/lib/globals/module#use_extension"><code>use_extension</code></a>

แท็ก loading_and_analysis

--[no]experimental_platforms_api ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" จะเปิดใช้ Starlark API ที่เกี่ยวข้องกับแพลตฟอร์มจำนวนหนึ่งซึ่งมีประโยชน์สำหรับการแก้ไขข้อบกพร่อง

แท็ก loading_and_analysis, experimental

--[no]experimental_repo_remote_exec ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" repository_rule จะมีความสามารถในการดำเนินการจากระยะไกลบางอย่าง

แท็ก build_file_semantics, loading_and_analysis, experimental

--[no]experimental_repository_ctx_execute_wasm ค่าเริ่มต้น: "false"

หากเป็นจริง จะเปิดใช้เมธอด repository_ctx load_wasm และ execute_wasm

แท็ก loading_and_analysis, experimental

--[no]experimental_sibling_repository_layout ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ระบบจะสร้างที่เก็บที่ไม่ใช่ที่เก็บหลักเป็นลิงก์สัญลักษณ์ไปยังที่เก็บหลักในรูทการดำเนินการ กล่าวคือ ที่เก็บทั้งหมดเป็นรายการย่อยโดยตรงของไดเรกทอรี $output_base/execution_root ซึ่งจะส่งผลให้ $output_base/execution_root/main/external ว่างลงสำหรับไดเรกทอรี "external" ระดับบนสุดที่แท้จริง

แท็ก action_command_lines, bazel_internal_configuration, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_single_package_toolchain_binding ค่าเริ่มต้น: "false"

หากเปิดใช้ ฟังก์ชัน register_toolchain อาจไม่มีรูปแบบเป้าหมายซึ่งอาจอ้างอิงถึงแพ็กเกจมากกว่า 1 รายการ

แท็ก loading_and_analysis, incompatible_change

--[no]experimental_starlark_types ค่าเริ่มต้น: "false"

เปิดใช้คำอธิบายประกอบประเภทและการตรวจสอบประเภท --experimental_starlark_types_allowed_paths เป็นผู้ควบคุมสถานที่ที่อนุญาตให้ใช้คำอธิบายประกอบ

แท็ก loading_and_analysis, experimental

--experimental_starlark_types_allowed_paths=<comma-separated list of options> ค่าเริ่มต้น: ""

รายการคำนำหน้าป้ายกำกับที่แน่นอนซึ่งอนุญาตให้ใช้คำอธิบายประกอบประเภท Starlark

แท็ก loading_and_analysis, experimental

--[no]incompatible_allow_tags_propagation ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" ระบบจะส่งต่อแท็กจากเป้าหมายไปยังข้อกำหนดการดำเนินการของแอ็กชัน มิเช่นนั้น ระบบจะไม่ส่งต่อแท็ก ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/8830

แท็ก build_file_semantics, experimental

--[no]incompatible_always_check_depset_elements ค่าเริ่มต้น: "จริง"

ตรวจสอบความถูกต้องขององค์ประกอบที่เพิ่มลงในชุดทรัพยากรในตัวสร้างทั้งหมด องค์ประกอบต้องไม่เปลี่ยนแปลง แต่ในอดีตเครื่องมือสร้าง depset(direct=...) ลืมตรวจสอบ ใช้ Tuple แทนรายการในองค์ประกอบ depset ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/10313

แท็ก build_file_semantics, incompatible_change

--incompatible_autoload_externally=<comma-separated set of options> ค่าเริ่มต้น: "+@rules_cc"

รายการกฎ (หรือสัญลักษณ์อื่นๆ) ที่คั่นด้วยคอมมาซึ่งก่อนหน้านี้เป็นส่วนหนึ่งของ Bazel และตอนนี้ต้องดึงข้อมูลจากที่เก็บภายนอกที่เกี่ยวข้อง โดยมีจุดประสงค์เพื่อใช้ในการย้ายข้อมูลกฎออกจาก Bazel ดู https://github.com/bazelbuild/bazel/issues/23043 ด้วย สัญลักษณ์ที่โหลดโดยอัตโนมัติภายในไฟล์จะทำงานราวกับว่าคำจำกัดความที่สร้างขึ้นใน Bazel ถูกแทนที่ด้วยคำจำกัดความใหม่ที่ชัดเจนในที่เก็บข้อมูลภายนอก สำหรับไฟล์ BUILD การดำเนินการนี้หมายถึงการเพิ่มคำสั่ง load() โดยนัย สำหรับไฟล์ .bzl จะเป็นคำสั่ง load() หรือการเปลี่ยนแปลงฟิลด์ของออบเจ็กต์ native โดยขึ้นอยู่กับว่าสัญลักษณ์ที่โหลดอัตโนมัติเป็นกฎหรือไม่ Bazel จะดูแลรายการสัญลักษณ์ทั้งหมดที่อาจโหลดอัตโนมัติซึ่งมีการฮาร์ดโค้ดไว้ และเฉพาะสัญลักษณ์เหล่านั้นเท่านั้นที่จะปรากฏในแฟล็กนี้ สำหรับแต่ละสัญลักษณ์ Bazel จะทราบตำแหน่งคำจำกัดความใหม่ในที่เก็บข้อมูลภายนอก รวมถึงชุดที่เก็บข้อมูลที่ต้องไม่โหลดโดยอัตโนมัติเพื่อหลีกเลี่ยงการสร้างวงจร รายการ "+foo" ในแฟล็กนี้จะทำให้ระบบโหลดสัญลักษณ์ foo โดยอัตโนมัติ ยกเว้นในที่เก็บที่ได้รับการยกเว้นของ foo ซึ่งเวอร์ชัน foo ที่กำหนดโดย Bazel จะยังคงใช้งานได้ รายการ "foo" จะทริกเกอร์การโหลดอัตโนมัติตามที่ระบุไว้ข้างต้น แต่ระบบจะไม่ทำให้ foo เวอร์ชันที่กำหนดโดย Bazel พร้อมใช้งานในที่เก็บที่ยกเว้น ซึ่งจะช่วยให้มั่นใจได้ว่าที่เก็บภายนอกของ foo จะไม่ขึ้นอยู่กับการใช้งาน Bazel เวอร์ชันเก่าของ foo รายการ "-foo" จะไม่ทริกเกอร์การโหลดอัตโนมัติ แต่จะทำให้เวอร์ชัน foo ที่กำหนดโดย Bazel เข้าถึงไม่ได้ทั่วทั้งพื้นที่ทำงาน ใช้เพื่อตรวจสอบว่าพื้นที่ทำงานพร้อมที่จะลบนิยามของ foo ออกจาก Bazel แล้ว หากไม่ได้ตั้งชื่อสัญลักษณ์ในฟีเจอร์นี้ สัญลักษณ์นั้นจะยังคงทำงานตามปกติ โดยจะไม่มีการโหลดอัตโนมัติและไม่มีการระงับเวอร์ชันที่กำหนดโดย Bazel ดูการกำหนดค่าได้ที่ https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java นอกจากนี้ คุณยังใช้ทั้งที่เก็บเป็นทางลัดได้ด้วย เช่น +@rules_python จะโหลดกฎ Python ทั้งหมดโดยอัตโนมัติ

แท็ก loses_incremental_state, build_file_semantics, incompatible_change

--[no]incompatible_disable_autoloads_in_main_repo ค่าเริ่มต้น: "จริง"

ควบคุมว่ามีการเปิดใช้การโหลดอัตโนมัติ (ตั้งค่าโดย --incompatible_autoload_externally) ในที่เก็บหลักหรือไม่ เมื่อเปิดใช้ กฎ (หรือสัญลักษณ์อื่นๆ) ที่เคยเป็นส่วนหนึ่งของ Bazel จะต้องมีคำสั่งโหลด ใช้ Buildifier เพื่อเพิ่ม

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_disable_objc_library_transition ค่าเริ่มต้น: "จริง"

ปิดใช้ทรานซิชันที่กำหนดเองของ objc_library และรับค่าจากเป้าหมายระดับบนสุดแทน (ไม่มีการดำเนินการใน Bazel)

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_starlark_host_transitions ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" แอตทริบิวต์กฎจะตั้งค่า "cfg = "host"" ไม่ได้ กฎควรตั้งค่า "cfg = "exec"" แทน

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_disable_target_default_provider_fields ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ให้ปิดใช้ความสามารถในการใช้ผู้ให้บริการเริ่มต้นผ่านไวยากรณ์ฟิลด์ โปรดใช้ไวยากรณ์ provider-key แทน เช่น แทนที่จะใช้ ctx.attr.dep.files เพื่อเข้าถึง files ให้ใช้ `ctx.attr.dep[DefaultInfo].files ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/9014

แท็ก build_file_semantics, incompatible_change

--incompatible_disable_transitions_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่คั่นด้วยคอมมาซึ่งใช้ในอินพุตหรือเอาต์พุตของการเปลี่ยนฉากไม่ได้

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_disallow_ctx_resolve_tools ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" การเรียกใช้ API ctx.resolve_tools ที่เลิกใช้งานแล้วจะล้มเหลวเสมอ ควรแทนที่การใช้ API นี้ด้วยอาร์กิวเมนต์ที่เรียกใช้งานได้หรืออาร์กิวเมนต์เครื่องมือไปยัง ctx.actions.run หรือ ctx.actions.run_shell

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_disallow_empty_glob ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็นจริง ค่าเริ่มต้นของอาร์กิวเมนต์ allow_empty ของ glob() จะเป็น False

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_enable_deprecated_label_apis ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะใช้ API ที่เลิกใช้งานแล้วบางรายการ (native.repository_name, Label.workspace_name, Label.relative) ได้

แท็ก loading_and_analysis

--[no]incompatible_fail_on_unknown_attributes ค่าเริ่มต้น: "จริง"

หากเปิดใช้ เป้าหมายที่มีแอตทริบิวต์ที่ไม่รู้จักซึ่งตั้งค่าเป็น "ไม่มี" จะล้มเหลว

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_fix_package_group_reporoot_syntax ค่าเริ่มต้น: "จริง"

ในแอตทริบิวต์ packages ของ package_group ให้เปลี่ยนความหมายของค่า "//..." เพื่ออ้างอิงถึงแพ็กเกจทั้งหมดในที่เก็บปัจจุบันแทนที่จะเป็นแพ็กเกจทั้งหมดในที่เก็บใดๆ คุณใช้ค่าพิเศษ "public" แทน "//..." เพื่อให้ได้ลักษณะการทำงานแบบเดิมได้ แฟล็กนี้กำหนดให้ต้องเปิดใช้ --incompatible_package_group_has_public_syntax ด้วย

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_locations_prefers_executable ค่าเริ่มต้น: "จริง"

ไม่ว่าเป้าหมายที่ให้ไฟล์ที่เรียกใช้งานได้จะขยายเป็นไฟล์ที่เรียกใช้งานได้แทนที่จะเป็นไฟล์ใน <code>DefaultInfo.files</code> ภายใต้การขยาย $(locations ...) หรือไม่ หากจำนวนไฟล์ไม่ใช่ 1

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_no_attr_license ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" จะปิดใช้ฟังก์ชัน attr.license

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_no_implicit_file_export ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ไฟล์ต้นฉบับ (ที่ใช้) จะเป็นแบบส่วนตัวในแพ็กเกจ เว้นแต่จะส่งออกอย่างชัดเจน ดู https://github.com/bazelbuild/proposals/blob/master/designs/2019-10-24-file-visibility.md

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_no_implicit_watch_label ค่าเริ่มต้น: "จริง"

หากเป็นจริง เมธอดใน <code>repository_ctx</code> ที่ส่งป้ายกำกับจะไม่ดูไฟล์ภายใต้ป้ายกำกับนั้นโดยอัตโนมัติเพื่อดูการเปลี่ยนแปลงอีกต่อไป แม้ว่า <code>watch = "no"</code> และ <code>repository_ctx.path</code> จะไม่ทำให้ระบบดูเส้นทางที่ส่งคืนอีกต่อไป ใช้ <code>repository_ctx.watch</code> แทน

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_no_rule_outputs_param ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" จะปิดใช้พารามิเตอร์ outputs ของฟังก์ชัน rule() Starlark

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_package_group_has_public_syntax ค่าเริ่มต้น: "จริง"

ในแอตทริบิวต์ packages ของ package_group จะอนุญาตให้เขียน "public" หรือ "private" เพื่ออ้างอิงถึงแพ็กเกจทั้งหมดหรือไม่ใช่แพ็กเกจตามลำดับ

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_resolve_select_keys_eagerly ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะแปลงคีย์สตริงในพจนานุกรมที่ส่งไปยัง select() ในไฟล์ .bzl เป็นป้ายกำกับที่สัมพันธ์กับไฟล์นั้นทันที แทนที่จะตีความให้สัมพันธ์กับไฟล์ BUILD ที่โหลดในท้ายที่สุด

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_run_shell_command_string ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" พารามิเตอร์คำสั่งของ actions.run_shell จะยอมรับเฉพาะสตริง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_simplify_unconditional_selects_in_rule_attrs ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ลดความซับซ้อนของแอตทริบิวต์กฎที่กำหนดค่าได้ซึ่งมีเฉพาะการเลือกแบบไม่มีเงื่อนไข เช่น หากกำหนด ["a"] + select("//conditions:default", ["b"]) ให้กับแอตทริบิวต์กฎ ระบบจะจัดเก็บเป็น ["a", "b"] ตัวเลือกนี้ไม่มีผลต่อแอตทริบิวต์ของมาโครสัญลักษณ์หรือค่าเริ่มต้นของแอตทริบิวต์

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_stop_exporting_build_file_path ค่าเริ่มต้น: "false"

หากตั้งค่าเป็นจริง ctx.build_file_path ที่เลิกใช้งานแล้วจะใช้ไม่ได้ แต่จะใช้ ctx.label.package + '/BUILD' แทนได้

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_stop_exporting_language_modules ค่าเริ่มต้น: "false"

หากเปิดใช้ โมดูลเฉพาะภาษาบางอย่าง (เช่น cc_common) จะไม่พร้อมใช้งานในไฟล์ .bzl ของผู้ใช้ และอาจเรียกใช้ได้จากที่เก็บกฎที่เกี่ยวข้องเท่านั้น

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_unambiguous_label_stringification ค่าเริ่มต้น: "จริง"

เมื่อเป็นจริง Bazel จะแปลงป้ายกำกับ @//foo:bar เป็นสตริง @//foo:bar แทนที่จะเป็น //foo:bar การเปลี่ยนแปลงนี้จะส่งผลต่อลักษณะการทำงานของ str(), ตัวดำเนินการ % และอื่นๆ เท่านั้น โดยลักษณะการทำงานของ repr() จะไม่เปลี่ยนแปลง ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/15916

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_use_cc_configure_from_rules_cc ค่าเริ่มต้น: "false"

เมื่อเป็นจริง Bazel จะไม่อนุญาตให้ใช้ cc_configure จาก @bazel_tools อีกต่อไป โปรดดูรายละเอียดและวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/10134

แท็ก loading_and_analysis, incompatible_change

--max_computation_steps=<a long integer> ค่าเริ่มต้น: "0"

จำนวนขั้นตอนการคำนวณ Starlark สูงสุดที่ไฟล์ BUILD อาจดำเนินการได้ (0 หมายถึงไม่จำกัด)

แท็ก build_file_semantics

--nested_set_depth_limit=<an integer> ค่าเริ่มต้น: "3500"

ความลึกสูงสุดของกราฟภายใน depset (หรือที่เรียกว่า NestedSet) ซึ่งหากเกินกว่านี้ ตัวสร้าง depset() จะทำงานไม่สำเร็จ

แท็ก loading_and_analysis

--repositories_without_autoloads=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการที่เก็บเพิ่มเติม (นอกเหนือจากที่เก็บที่ Bazel รู้จัก) ที่ไม่ควรเพิ่มการโหลดอัตโนมัติ โดยปกติแล้วควรมีที่เก็บที่ที่เก็บซึ่งอาจโหลดโดยอัตโนมัติต้องอาศัยที่เก็บนี้ (และอาจทำให้เกิดวงจรได้)

แท็ก loses_incremental_state, build_file_semantics, incompatible_change

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและความหมายของ Bzlmod:
--allow_yanked_versions=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุเวอร์ชันของโมดูลในรูปแบบ &lt;module1&gt;@&lt;version1&gt;,&lt;module2&gt;@&lt;version2&gt; ที่จะได้รับอนุญาตในกราฟการอ้างอิงที่แก้ไขแล้ว แม้ว่าจะมีการประกาศว่าถูกยกเลิกในรีจิสทรีที่โมดูลมาจาก (หากไม่ได้มาจาก NonRegistryOverride) มิฉะนั้น เวอร์ชันที่ถูกเพิกถอนจะทำให้การแก้ไขล้มเหลว คุณยังกำหนดเวอร์ชันที่ถูกยกเลิกที่อนุญาตได้ด้วยตัวแปรสภาพแวดล้อม BZLMOD_ALLOW_YANKED_VERSIONS คุณปิดใช้การตรวจสอบนี้ได้โดยใช้คีย์เวิร์ด "all" (ไม่แนะนำ)

แท็ก loading_and_analysis

--check_bazel_compatibility=<error, warning or off> ค่าเริ่มต้น: "error"

ตรวจสอบความเข้ากันได้ของโมดูล Bazel กับเวอร์ชัน Bazel ค่าที่ใช้ได้คือ error เพื่อส่งต่อให้แก้ไขไม่สำเร็จ off เพื่อปิดใช้การตรวจสอบ หรือ warning เพื่อพิมพ์คำเตือนเมื่อตรวจพบว่าไม่ตรงกัน

แท็ก loading_and_analysis

--check_direct_dependencies=<off, warning or error> ค่าเริ่มต้น: "warning"

ตรวจสอบว่าbazel_depการอ้างอิงโดยตรงที่ประกาศในโมดูลรูทเป็นเวอร์ชันเดียวกับที่คุณได้รับในกราฟการอ้างอิงที่แก้ไขแล้ว ค่าที่ใช้ได้คือ off เพื่อปิดใช้การตรวจสอบ warning เพื่อพิมพ์คำเตือนเมื่อตรวจพบความไม่ตรงกัน หรือ error เพื่อส่งต่อเป็นความล้มเหลวในการแก้ไข

แท็ก loading_and_analysis

--[no]ignore_dev_dependency ค่าเริ่มต้น: "false"

หากเป็น "จริง" Bazel จะไม่สนใจ bazel_dep และ use_extension ที่ประกาศเป็น dev_dependency ใน MODULE.bazel ของโมดูลรูท โปรดทราบว่าระบบจะละเว้นการขึ้นต่อกันของนักพัฒนาซอฟต์แวร์เหล่านั้นใน MODULE.bazel เสมอ หากไม่ใช่โมดูลรูท ไม่ว่าค่าของแฟล็กนี้จะเป็นอะไรก็ตาม

แท็ก loading_and_analysis

ค่าเริ่มต้นของ --lockfile_mode=<off, update, refresh or error>: "update"

ระบุวิธีและจะใช้หรือไม่ใช้ไฟล์ล็อก ค่าที่ใช้ได้คือ update เพื่อใช้ไฟล์ล็อกและอัปเดตหากมีการเปลี่ยนแปลง refresh เพื่อรีเฟรชข้อมูลที่เปลี่ยนแปลงได้เพิ่มเติม (เวอร์ชันที่ถูกยกเลิกและโมดูลที่ขาดหายไปก่อนหน้านี้) จากรีจิสทรีระยะไกลเป็นครั้งคราว error เพื่อใช้ไฟล์ล็อกแต่แสดงข้อผิดพลาดหากไฟล์ล็อกไม่อัปเดต หรือ off เพื่อไม่อ่านหรือเขียนไปยังไฟล์ล็อก

แท็ก loading_and_analysis

--module_mirrors=<comma-separated list of options> ค่าเริ่มต้น: ดูคำอธิบาย

รายการ URL ที่คั่นด้วยคอมมาซึ่งจะใช้ค้นหา URL ต้นทางของโมดูล Bazel นอกเหนือจากและมีลำดับความสำคัญเหนือกว่า URL แบบมิเรอร์ที่รีจิสทรีระบุไว้ ตั้งค่านี้เป็น ค่าว่างเพื่อปิดใช้มิเรอร์ที่รีจิสทรีไม่ได้ระบุ ชุดมิเรอร์เริ่มต้นอาจเปลี่ยนแปลงไปเมื่อเวลาผ่านไป แต่ระบบจะยืนยันการดาวน์โหลดทั้งหมดจากมิเรอร์ โดยใช้แฮชที่จัดเก็บไว้ในรีจิสทรี (และจะตรึงไว้โดยไฟล์ล็อก)

แท็ก loading_and_analysis

--override_module=<an equals-separated mapping of module name to path> มีการสะสมการใช้งานหลายครั้ง

ลบล้างโมดูลด้วยเส้นทางในเครื่องในรูปแบบ <ชื่อโมดูล>=<เส้นทาง> หากเส้นทางที่ระบุเป็นเส้นทางแบบสัมบูรณ์ ระบบจะใช้เส้นทางนั้นตามที่ระบุ หากเส้นทางที่ระบุเป็นเส้นทางสัมพัทธ์ เส้นทางนั้นจะสัมพันธ์กับไดเรกทอรีการทำงานปัจจุบัน หากเส้นทางที่ระบุเริ่มต้นด้วย "%workspace%" เส้นทางนั้นจะสัมพันธ์กับรูทของพื้นที่ทำงาน ซึ่งเป็นเอาต์พุตของ bazel info workspace หากเส้นทางที่ระบุว่างเปล่า ให้นำการลบล้างก่อนหน้าออก

--registry=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุรีจิสทรีที่จะใช้เพื่อค้นหาทรัพยากร Dependency ของโมดูล Bazel ลำดับมีความสำคัญ โดยระบบจะค้นหาโมดูลในรีจิสทรีที่อยู่ก่อนหน้าก่อน และจะกลับไปใช้รีจิสทรีที่อยู่ถัดไปก็ต่อเมื่อไม่มีโมดูลในรีจิสทรีที่อยู่ก่อนหน้า

แท็ก changes_inputs

--vendor_dir=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไดเรกทอรีที่ควรเก็บที่เก็บภายนอกในโหมดผู้ให้บริการ ไม่ว่าจะเพื่อวัตถุประสงค์ในการดึงข้อมูลลงในไดเรกทอรีนั้นหรือใช้ขณะสร้าง คุณระบุเส้นทางเป็นเส้นทางสัมบูรณ์หรือเส้นทางสัมพัทธ์กับไดเรกทอรีพื้นที่ทำงานก็ได้

แท็ก loading_and_analysis

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--gc_thrashing_limits=<comma separated pairs of <period>:<count>> ค่าเริ่มต้น: "1s:2,20s:3,1m:5"

ขีดจำกัดซึ่งหากถึงแล้วจะทำให้ GcThrashingDetector ขัดข้อง Bazel ด้วย OOM โดยแต่ละขีดจำกัดจะระบุเป็น <period>:<count> ซึ่ง period คือระยะเวลา และ count คือจำนวนเต็มบวก หากพื้นที่ที่ได้รับการย้ายข้อมูล (ฮีปของ Gen เก่า) ยังคงถูกใช้งานมากกว่า --gc_thrashing_threshold เปอร์เซ็นต์หลังจาก GC แบบเต็มต่อเนื่อง <count> ครั้งภายใน <period> ระบบจะทริกเกอร์ OOM คุณระบุขีดจํากัดได้หลายรายการโดยคั่นด้วยคอมมา

แท็ก host_machine_resource_optimizations

--[no]heuristically_drop_nodes ค่าเริ่มต้น: "false"

หากเป็นจริง Blaze จะนำโหนด FileState และ DirectoryListingState ออกหลังจากที่โหนด File และ DirectoryListing ที่เกี่ยวข้องเสร็จสิ้นเพื่อประหยัดหน่วยความจำ เราคาดว่าคุณไม่น่าจะต้องใช้โหนดเหล่านี้อีก หากเป็นเช่นนั้น โปรแกรมจะประเมินอีกครั้ง

แท็ก loses_incremental_state

--[no]incompatible_do_not_split_linking_cmdline ค่าเริ่มต้น: "จริง"

เมื่อเป็นจริง Bazel จะไม่แก้ไขแฟล็กบรรทัดคำสั่งที่ใช้สำหรับการลิงก์อีกต่อไป และจะไม่เลือกแฟล็กที่จะไปที่ไฟล์พารามิเตอร์และแฟล็กที่จะไม่ไป ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7670

แท็ก loading_and_analysis, incompatible_change

--[no]keep_state_after_build ค่าเริ่มต้น: "จริง"

หากเป็นเท็จ Blaze จะทิ้งสถานะในหน่วยความจำจากการสร้างนี้เมื่อการสร้างเสร็จสิ้น บิลด์ต่อๆ ไปจะไม่มีการเพิ่มขึ้นเมื่อเทียบกับบิลด์นี้

แท็ก loses_incremental_state

--skyframe_high_water_mark_full_gc_drops_per_invocation=<an integer, >= 0> ค่าเริ่มต้น: "10"

Flag สำหรับการกำหนดค่าขั้นสูงของเครื่องมือ Skyframe ภายในของ Bazel หาก Bazel ตรวจพบว่าการใช้งานเปอร์เซ็นต์ฮีปที่เก็บไว้เกินเกณฑ์ที่ตั้งค่าโดย --skyframe_high_water_mark_threshold เมื่อเกิดเหตุการณ์ GC แบบเต็ม ระบบจะทิ้งสถานะ Skyframe ชั่วคราวที่ไม่จำเป็น โดยทำได้สูงสุดตามจำนวนครั้งต่อการเรียกใช้ ค่าเริ่มต้นคือ 10 0 หมายความว่าเหตุการณ์ GC แบบเต็มจะไม่ทริกเกอร์การลด หากถึงขีดจำกัดแล้ว ระบบจะไม่ทิ้งสถานะ Skyframe อีกต่อไปเมื่อเกิดเหตุการณ์ GC แบบเต็มและเกินเกณฑ์เปอร์เซ็นต์ฮีปที่เก็บรักษาไว้

แท็ก host_machine_resource_optimizations

--skyframe_high_water_mark_minor_gc_drops_per_invocation=<an integer, >= 0> ค่าเริ่มต้น: "10"

Flag สำหรับการกำหนดค่าขั้นสูงของเครื่องมือ Skyframe ภายในของ Bazel หาก Bazel ตรวจพบว่าการใช้งานเปอร์เซ็นต์ฮีปที่เก็บไว้เกินเกณฑ์ที่ตั้งค่าโดย --skyframe_high_water_mark_threshold เมื่อเกิดเหตุการณ์ GC เล็กน้อย ระบบจะทิ้งสถานะ Skyframe ชั่วคราวที่ไม่จำเป็น โดยทำได้สูงสุดตามจำนวนครั้งนี้ต่อการเรียกใช้ ค่าเริ่มต้นคือ 10 0 หมายความว่าเหตุการณ์ GC เล็กๆ จะไม่ทำให้เกิดการลดลง หากถึงขีดจำกัดแล้ว ระบบจะไม่ทิ้งสถานะ Skyframe อีกต่อไปเมื่อเกิดเหตุการณ์ GC ระดับย่อยและเกินเกณฑ์เปอร์เซ็นต์ฮีปที่เก็บไว้

แท็ก host_machine_resource_optimizations

--skyframe_high_water_mark_threshold=<an integer> ค่าเริ่มต้น: "85"

Flag สำหรับการกำหนดค่าขั้นสูงของเครื่องมือ Skyframe ภายในของ Bazel หาก Bazel ตรวจพบว่าการใช้งานเปอร์เซ็นต์ฮีปที่เก็บไว้มีค่าอย่างน้อยเท่ากับเกณฑ์นี้ Bazel จะทิ้งสถานะ Skyframe ชั่วคราวที่ไม่จำเป็น การปรับแต่งนี้อาจช่วยลดผลกระทบของเวลาจริงที่เกิดจากการสลับหน่วยความจำของ GC เมื่อการสลับหน่วยความจำของ GC (1) เกิดจากการใช้หน่วยความจำของสถานะชั่วคราวนี้ และ (2) มีค่าใช้จ่ายมากกว่าการสร้างสถานะใหม่เมื่อจำเป็น

แท็ก host_machine_resource_optimizations

--[no]track_incremental_state ค่าเริ่มต้น: "จริง"

หากเป็นเท็จ Blaze จะไม่คงข้อมูลที่อนุญาตให้มีการลบล้างและประเมินซ้ำในการสร้างแบบเพิ่มทีละรายการเพื่อประหยัดหน่วยความจำในการสร้างนี้ บิลด์ต่อๆ ไปจะไม่มีการเพิ่มขึ้นเมื่อเทียบกับบิลด์นี้ โดยปกติแล้ว คุณจะต้องระบุ --batch เมื่อตั้งค่านี้เป็น false

แท็ก loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--[no]announce_rc ค่าเริ่มต้น: "false"

ว่าจะประกาศตัวเลือก rc หรือไม่

แท็ก affects_outputs

--[no]attempt_to_print_relative_paths ค่าเริ่มต้น: "false"

เมื่อพิมพ์ส่วนตำแหน่งของข้อความ ให้พยายามใช้เส้นทางที่สัมพันธ์กับไดเรกทอรีพื้นที่ทำงานหรือไดเรกทอรีใดไดเรกทอรีหนึ่งที่ระบุโดย --package_path

แท็ก terminal_output

--bes_backend=<a string> ค่าเริ่มต้น: ""

ระบุปลายทางแบ็กเอนด์ของบริการเหตุการณ์บิลด์ (BES) ในรูปแบบ [SCHEME://]HOST[:PORT] ค่าเริ่มต้นคือปิดใช้การอัปโหลด BES สคีมที่รองรับ ได้แก่ grpc และ grpcs (grpc ที่เปิดใช้ TLS) หากไม่ได้ระบุรูปแบบ Bazel จะถือว่าเป็น grpcs

แท็ก affects_outputs

--[no]bes_check_preceding_lifecycle_events ค่าเริ่มต้น: "false"

ตั้งค่าฟิลด์ check_preceding_lifecycle_events_present ใน PublishBuildToolEventStreamRequest ซึ่งจะบอกให้ BES ตรวจสอบว่าก่อนหน้านี้ได้รับเหตุการณ์ InvocationAttemptStarted และ BuildEnqueued ที่ตรงกับเหตุการณ์เครื่องมือปัจจุบันหรือไม่

แท็ก affects_outputs

--bes_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวในรูปแบบ NAME=VALUE ที่จะรวมอยู่ในคำขอ BES ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

แท็ก affects_outputs

--bes_instance_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุชื่ออินสแตนซ์ที่ BES จะเก็บ BEP ที่อัปโหลดไว้ ค่าเริ่มต้นคือ null

แท็ก affects_outputs

--bes_keywords=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ระบุรายการคีย์เวิร์ดการแจ้งเตือนที่จะเพิ่มลงในชุดคีย์เวิร์ดเริ่มต้นที่เผยแพร่ไปยัง BES ("command_name=<command_name> ", "protocol_name=BEP") ค่าเริ่มต้นคือไม่มี

แท็ก affects_outputs

--[no]bes_lifecycle_events ค่าเริ่มต้น: "จริง"

ระบุว่าจะเผยแพร่เหตุการณ์วงจร BES หรือไม่ (ค่าเริ่มต้นคือ "true")

แท็ก affects_outputs

--bes_oom_finish_upload_timeout=<An immutable length of time.> ค่าเริ่มต้น: "10m"

ระบุระยะเวลาที่ Bazel ควรรอให้การอัปโหลด BES/BEP เสร็จสมบูรณ์ขณะที่ OOMing โดยแฟล็กนี้จะช่วยให้มั่นใจได้ว่าจะมีการสิ้นสุดเมื่อ JVM มีการสลับ GC มากเกินไปและไม่สามารถดำเนินการใดๆ ในเธรดของผู้ใช้ได้

แท็ก bazel_monitoring

--bes_outerr_buffer_size=<an integer> ค่าเริ่มต้น: "10240"

ระบุขนาดสูงสุดของ stdout หรือ stderr ที่จะบัฟเฟอร์ใน BEP ก่อนที่จะรายงานเป็นเหตุการณ์ความคืบหน้า ระบบยังคงรายงานการเขียนแต่ละรายการในเหตุการณ์เดียว แม้ว่าจะมีขนาดใหญ่กว่าค่าที่ระบุจนถึง --bes_outerr_chunk_size

แท็ก affects_outputs

--bes_outerr_chunk_size=<an integer> ค่าเริ่มต้น: "1048576"

ระบุขนาดสูงสุดของ stdout หรือ stderr ที่จะส่งไปยัง BEP ในข้อความเดียว

แท็ก affects_outputs

--bes_proxy=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เชื่อมต่อกับบริการเหตุการณ์บิลด์ผ่านพร็อกซี ปัจจุบันนี้ คุณใช้แฟล็กนี้ได้เฉพาะในการกำหนดค่า Unix Domain Socket (unix:/path/to/socket)

--bes_results_url=<a string> ค่าเริ่มต้น: ""

ระบุ URL ฐานที่ผู้ใช้สามารถดูข้อมูลที่สตรีมไปยังแบ็กเอนด์ของ BES Bazel จะแสดง URL ที่ต่อท้ายด้วยรหัสการเรียกใช้ไปยังเทอร์มินัล

แท็ก terminal_output

--bes_system_keywords=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ระบุรายการคีย์เวิร์ดการแจ้งเตือนที่จะรวมโดยตรง โดยไม่ต้องมีคำนำหน้า "user_keyword=" สำหรับคีย์เวิร์ดที่ระบุผ่าน --bes_keywords มีไว้สำหรับผู้ให้บริการ Build ที่ตั้งค่า --bes_lifecycle_events=false และรวมคีย์เวิร์ดเมื่อเรียกใช้ PublishLifecycleEvent ผู้ให้บริการบิลด์ที่ใช้แฟล็กนี้ควรป้องกันไม่ให้ผู้ใช้ลบล้างค่าแฟล็ก

แท็ก affects_outputs

--bes_timeout=<An immutable length of time.> ค่าเริ่มต้น: "0s"

ระบุระยะเวลาที่ Bazel ควรรอการอัปโหลด BES/BEP ให้เสร็จสมบูรณ์หลังจากที่บิลด์และการทดสอบเสร็จสิ้น การหมดเวลาที่ถูกต้องคือจำนวนเต็มตามด้วยหน่วย ได้แก่ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) ค่าเริ่มต้นคือ "0" ซึ่งหมายความว่าไม่มีการหมดเวลา

แท็ก affects_outputs

--bes_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> ค่าเริ่มต้น: "wait_for_upload_complete"

ระบุว่าการอัปโหลด Build Event Service ควรบล็อกการสร้างให้เสร็จสมบูรณ์ หรือควรสิ้นสุดการเรียกใช้ทันทีและอัปโหลดให้เสร็จสมบูรณ์ในเบื้องหลัง

  • wait_for_upload_complete: บล็อกที่ส่วนท้ายของการเรียกใช้ปัจจุบันจนกว่าแบ็กเอนด์จะอัปโหลดและรับทราบเหตุการณ์ทั้งหมด (รวมถึงเหตุการณ์วงจรหากมี)
  • nowait_for_upload_complete: บล็อกที่จุดเริ่มต้นของการเรียกใช้ครั้งถัดไปจนกว่าแบ็กเอนด์จะอัปโหลดและรับทราบเหตุการณ์ทั้งหมด (รวมถึงเหตุการณ์วงจรหากมี)
  • fully_async: บล็อกที่จุดเริ่มต้นของการเรียกใช้ครั้งถัดไปจนกว่าจะอัปโหลดเหตุการณ์ทั้งหมด แต่จะไม่รอการรับทราบ เหตุการณ์อาจสูญหายในกรณีที่เกิดข้อผิดพลาด (ชั่วคราว) และแบ็กเอนด์อาจรายงานสตรีมว่าไม่สมบูรณ์ในโหมดนี้ ไม่รับประกันว่าจะมีการส่งเหตุการณ์วงจรของ FinishInvocationAttempt หรือ FinishBuild

แท็ก eagerness_to_exit

--build_event_binary_file=<a string> ค่าเริ่มต้น: ""

หากไม่ว่าง ให้เขียนการแสดงไบนารีที่คั่นด้วย Varint ของการแสดงโปรโตคอลเหตุการณ์การสร้างลงในไฟล์นั้น ตัวเลือกนี้หมายถึง --bes_upload_mode=wait_for_upload_complete

แท็ก affects_outputs

--[no]build_event_binary_file_path_conversion ค่าเริ่มต้น: "จริง"

แปลงเส้นทางในการแสดงไฟล์ไบนารีของโปรโตคอลเหตุการณ์การสร้างเป็น URI ที่ถูกต้องในระดับสากลมากขึ้นทุกครั้งที่เป็นไปได้ หากปิดใช้ ระบบจะใช้รูปแบบ URI file:// เสมอ

แท็ก affects_outputs

--build_event_binary_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> ค่าเริ่มต้น: "wait_for_upload_complete"

ระบุว่าการอัปโหลด Build Event Service สำหรับ --build_event_binary_file ควรบล็อกการสร้างให้เสร็จสมบูรณ์หรือควรสิ้นสุดการเรียกใช้ทันทีและอัปโหลดให้เสร็จสมบูรณ์ในเบื้องหลัง "wait_for_upload_complete" (ค่าเริ่มต้น), "nowait_for_upload_complete" หรือ "fully_async"

แท็ก eagerness_to_exit

--build_event_json_file=<a string> ค่าเริ่มต้น: ""

หากไม่ว่าง ให้เขียนการซีเรียลไลซ์ JSON ของโปรโตคอลเหตุการณ์บิลด์ลงในไฟล์นั้น ตัวเลือกนี้หมายถึง --bes_upload_mode=wait_for_upload_complete

แท็ก affects_outputs

--[no]build_event_json_file_path_conversion ค่าเริ่มต้น: "จริง"

แปลงเส้นทางในการแสดงไฟล์ JSON ของโปรโตคอลเหตุการณ์การสร้างเป็น URI ที่ถูกต้องในระดับสากลมากขึ้นทุกครั้งที่ทำได้ หากปิดใช้ ระบบจะใช้รูปแบบ URI file:// เสมอ

แท็ก affects_outputs

--build_event_json_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> ค่าเริ่มต้น: "wait_for_upload_complete"

ระบุว่าการอัปโหลด Build Event Service สำหรับ --build_event_json_file ควรบล็อกการสร้างให้เสร็จสมบูรณ์ หรือควรสิ้นสุดการเรียกใช้ทันทีและอัปโหลดให้เสร็จสมบูรณ์ในเบื้องหลัง "wait_for_upload_complete" (ค่าเริ่มต้น), "nowait_for_upload_complete" หรือ "fully_async"

แท็ก eagerness_to_exit

--build_event_max_named_set_of_file_entries=<an integer> ค่าเริ่มต้น: "5000"

จำนวนรายการสูงสุดสำหรับเหตุการณ์ named_set_of_files รายการเดียว ระบบจะไม่สนใจค่าที่น้อยกว่า 2 และจะไม่แยกเหตุการณ์ พารามิเตอร์นี้มีไว้เพื่อจำกัดขนาดเหตุการณ์สูงสุดในโปรโตคอลเหตุการณ์บิลด์ แม้ว่าจะไม่ได้ควบคุมขนาดเหตุการณ์โดยตรงก็ตาม ขนาดเหตุการณ์ทั้งหมดเป็นฟังก์ชันของโครงสร้างชุด รวมถึงความยาวของไฟล์และ URI ซึ่งอาจขึ้นอยู่กับฟังก์ชันแฮช

แท็ก affects_outputs

--[no]build_event_publish_all_actions ค่าเริ่มต้น: "false"

ควรเผยแพร่การดำเนินการทั้งหมดหรือไม่

แท็ก affects_outputs

--build_event_text_file=<a string> ค่าเริ่มต้น: ""

หากไม่ว่าง ให้เขียนการแสดงข้อความของโปรโตคอลเหตุการณ์การสร้างลงในไฟล์นั้น

แท็ก affects_outputs

--[no]build_event_text_file_path_conversion ค่าเริ่มต้น: "จริง"

แปลงเส้นทางในการแสดงไฟล์ข้อความของโปรโตคอลเหตุการณ์การสร้างเป็น URI ที่ถูกต้องในระดับสากลมากขึ้นทุกครั้งที่ทำได้ หากปิดใช้ ระบบจะใช้รูปแบบ URI file:// เสมอ

แท็ก affects_outputs

--build_event_text_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> ค่าเริ่มต้น: "wait_for_upload_complete"

ระบุว่าการอัปโหลด Build Event Service สำหรับ --build_event_text_file ควรบล็อกการสร้างให้เสร็จสมบูรณ์ หรือควรสิ้นสุดการเรียกใช้ทันทีและอัปโหลดให้เสร็จสมบูรณ์ในเบื้องหลัง "wait_for_upload_complete" (ค่าเริ่มต้น), "nowait_for_upload_complete" หรือ "fully_async"

แท็ก eagerness_to_exit

--build_event_upload_max_retries=<an integer> ค่าเริ่มต้น: "4"

จำนวนครั้งสูงสุดที่ Bazel ควรลองอัปโหลดเหตุการณ์บิลด์ซ้ำ

แท็ก bazel_internal_configuration

--[no]experimental_bep_target_summary ค่าเริ่มต้น: "false"

จะเผยแพร่เหตุการณ์ TargetSummary หรือไม่

--[no]experimental_build_event_expand_filesets ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ขยายชุดไฟล์ใน BEP เมื่อนำเสนอไฟล์เอาต์พุต

แท็ก affects_outputs

--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both> มีการสะสมการใช้งานหลายครั้ง

ระบุวิธีแสดงไฟล์ของกลุ่มเอาต์พุตในเหตุการณ์ BEP ของ TargetComplete/AspectComplete ค่าคือการกำหนดชื่อกลุ่มเอาต์พุตให้กับ "NAMED_SET_OF_FILES_ONLY", "INLINE_ONLY" หรือ "BOTH" อย่างใดอย่างหนึ่ง ค่าเริ่มต้นคือ "NAMED_SET_OF_FILES_ONLY" หากมีการทำซ้ำกลุ่มเอาต์พุต ระบบจะใช้ค่าสุดท้ายที่จะปรากฏ ค่าเริ่มต้นจะตั้งค่าโหมดสำหรับอาร์ติแฟกต์ความครอบคลุมเป็น BOTH: --experimental_build_event_output_group_mode=baseline.lcov=both

แท็ก affects_outputs

--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> ค่าเริ่มต้น: "1s"

การหน่วงเวลาเริ่มต้นขั้นต่ำสำหรับการลองใหม่แบบ Exponential Backoff เมื่อการอัปโหลด BEP ล้มเหลว (เลขยกกำลัง: 1.6)

แท็ก bazel_internal_configuration

--experimental_build_event_upload_strategy=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เลือกวิธีอัปโหลดอาร์ติแฟกต์ที่อ้างอิงในโปรโตคอลเหตุการณ์บิลด์ ใน Bazel ตัวเลือกที่ถูกต้อง ได้แก่ "local" และ "remote" ค่าเริ่มต้นคือ "local"

แท็ก affects_outputs

--[no]experimental_collect_load_average_in_profiler ค่าเริ่มต้น: "จริง"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมค่าเฉลี่ยของภาระงานโดยรวมของระบบ

แท็ก bazel_monitoring

--[no]experimental_collect_pressure_stall_indicators ค่าเริ่มต้น: "false"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมข้อมูล PSI ของ Linux

แท็ก bazel_monitoring

--[no]experimental_collect_resource_estimation ค่าเริ่มต้น: "false"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมการประมาณการใช้งาน CPU และหน่วยความจำสำหรับการกระทำเกี่ยวกับสถานที่

แท็ก bazel_monitoring

--[no]experimental_collect_skyframe_counts_in_profiler ค่าเริ่มต้น: "false"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมจำนวน SkyFunction ในกราฟ Skyframe เมื่อเวลาผ่านไปสำหรับประเภทฟังก์ชันหลัก เช่น เป้าหมายที่กำหนดค่าและการดำเนินการ อาจส่งผลต่อประสิทธิภาพเนื่องจากจะเข้าชมกราฟ Skyframe ทั้งหมดในทุกหน่วยเวลาการสร้างโปรไฟล์ อย่าใช้ Flag นี้กับการวัดประสิทธิภาพที่สำคัญ

แท็ก bazel_monitoring

--[no]experimental_collect_system_network_usage ค่าเริ่มต้น: "จริง"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมการใช้งานเครือข่ายของระบบ

แท็ก bazel_monitoring

--[no]experimental_collect_worker_data_in_profiler ค่าเริ่มต้น: "จริง"

หากเปิดใช้ โปรไฟล์เลอร์จะรวบรวมข้อมูลทรัพยากรแบบรวมของ Worker

แท็ก bazel_monitoring

--experimental_command_profile=<cpu, wall, alloc or lock> ค่าเริ่มต้น: ดูคำอธิบาย

บันทึกโปรไฟล์ Java Flight Recorder ตลอดระยะเวลาของคำสั่ง ต้องระบุประเภทเหตุการณ์การจัดโปรไฟล์ที่รองรับ (cpu, wall, alloc หรือ lock) เป็นอาร์กิวเมนต์ ระบบจะเขียนโปรไฟล์ลงในไฟล์ที่ตั้งชื่อตามประเภทเหตุการณ์ในไดเรกทอรีฐานของเอาต์พุต ไวยากรณ์และความหมายของแฟล็กนี้อาจเปลี่ยนแปลงในอนาคตเพื่อรองรับโปรไฟล์ประเภทอื่นๆ หรือรูปแบบเอาต์พุตเพิ่มเติม โปรดใช้ด้วยความเสี่ยงของคุณเอง

--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, repo_cache_gc_wait, spawn_log, rpc, skycache, wasm_load, wasm_exec or unknown> มีการสะสมการใช้งานหลายครั้ง

ระบุงานโปรไฟล์เพิ่มเติมที่จะรวมไว้ในโปรไฟล์

แท็ก bazel_monitoring

--[no]experimental_profile_include_primary_output ค่าเริ่มต้น: "false"

รวมแอตทริบิวต์ "out" เพิ่มเติมในเหตุการณ์การดำเนินการซึ่งมีเส้นทางการดำเนินการไปยังเอาต์พุตหลักของการดำเนินการ

แท็ก bazel_monitoring

--[no]experimental_profile_include_target_configuration ค่าเริ่มต้น: "false"

รวมแฮชการกำหนดค่าเป้าหมายไว้ในข้อมูลโปรไฟล์ JSON ของเหตุการณ์การดำเนินการ

แท็ก bazel_monitoring

--[no]experimental_profile_include_target_label ค่าเริ่มต้น: "false"

รวมป้ายกำกับเป้าหมายไว้ในข้อมูลโปรไฟล์ JSON ของเหตุการณ์การกระทำ

แท็ก bazel_monitoring

--[no]experimental_record_metrics_for_all_mnemonics ค่าเริ่มต้น: "false"

ควบคุมเอาต์พุตของ BEP ActionSummary และ BuildGraphMetrics โดยจำกัดจำนวนนิโมนิกใน ActionData และจำนวนรายการที่รายงานใน BuildGraphMetrics.AspectCount/RuleClassCount โดยค่าเริ่มต้น ระบบจะจำกัดจำนวนประเภทไว้ที่ 20 อันดับแรกตามจำนวนการดำเนินการที่ดำเนินการสำหรับ ActionData และอินสแตนซ์สำหรับ RuleClass และ Asepcts การตั้งค่าตัวเลือกนี้จะเขียนสถิติสำหรับทุกมνηนิค กฎคลาส และแง่มุม

--[no]experimental_record_skyframe_metrics ค่าเริ่มต้น: "false"

ควบคุมเอาต์พุตของ BEP BuildGraphMetrics ซึ่งรวมถึงเมตริก Skyframe ที่คำนวณได้ยากเกี่ยวกับ Skykeys, RuleClasses และ Aspects เมื่อตั้งค่าสถานะนี้เป็น false ระบบจะไม่ป้อนข้อมูล BuildGraphMetrics.rule_count และ aspectfields ใน BEP

--[no]experimental_run_bep_event_include_residue ค่าเริ่มต้น: "false"

จะรวมส่วนที่เหลือของบรรทัดคำสั่งในเหตุการณ์การสร้างการเรียกใช้ซึ่งอาจมีส่วนที่เหลือหรือไม่ โดยค่าเริ่มต้น ระบบจะไม่รวมสารตกค้างไว้ในเหตุการณ์การสร้างคำสั่งเรียกใช้ที่อาจมีสารตกค้าง

แท็ก affects_outputs

--[no]experimental_stream_log_file_uploads ค่าเริ่มต้น: "false"

สตรีมการอัปโหลดไฟล์บันทึกไปยังพื้นที่เก็บข้อมูลระยะไกลโดยตรงแทนที่จะเขียนลงในดิสก์

แท็ก affects_outputs

--experimental_workspace_rules_log_file=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

บันทึกเหตุการณ์บางอย่างของกฎ Workspace ลงในไฟล์นี้เป็นโปรโตคอล WorkspaceEvent ที่คั่นด้วยตัวคั่น

--[no]generate_json_trace_profile ค่าเริ่มต้น: "auto"

หากเปิดใช้ Bazel จะสร้างโปรไฟล์การสร้างและเขียนโปรไฟล์รูปแบบ JSON ลงในไฟล์ในฐานเอาต์พุต ดูโปรไฟล์โดยโหลดลงใน chrome://tracing โดยค่าเริ่มต้น Bazel จะเขียนโปรไฟล์สำหรับคำสั่งและการค้นหาที่คล้ายกับการบิลด์ทั้งหมด

แท็ก bazel_monitoring

--[no]heap_dump_on_oom ค่าเริ่มต้น: "false"

จะส่งออก Heap Dump ด้วยตนเองหรือไม่หากมีการส่ง OOM (รวมถึง OOM ด้วยตนเองเนื่องจากถึง --gc_thrashing_limits) ระบบจะเขียนข้อมูลการทิ้งไปยัง <output_base>/<invocation_id>.heapdump.hprof ตัวเลือกนี้จะแทนที่ -XX:+HeapDumpOnOutOfMemoryError ซึ่งไม่มีผลกับ OOM ที่ดำเนินการด้วยตนเอง

แท็ก bazel_monitoring

--jvm_heap_histogram_internal_object_pattern=<a valid Java regular expression> ค่าเริ่มต้น: "jdk\.internal\.vm\.Filler.+"

นิพจน์ทั่วไปสำหรับการลบล้างตรรกะการจับคู่สำหรับการรวบรวมหน่วยความจำฮีป JVM ของ JDK21 ขึ้นไป เราใช้รายละเอียดการติดตั้งใช้งาน G1 GC ภายในที่เปลี่ยนแปลงได้เพื่อรับเมตริกหน่วยความจำที่สะอาด ตัวเลือกนี้ช่วยให้เราปรับตัวให้เข้ากับการเปลี่ยนแปลงในการติดตั้งใช้งานภายในดังกล่าวได้โดยไม่ต้องรอการเผยแพร่ไบนารี ส่งไปยัง JDK Matcher.find()

--[no]legacy_important_outputs ค่าเริ่มต้น: "false"

ใช้ตัวเลือกนี้เพื่อระงับการสร้างฟิลด์ important_outputs เดิมในเหตุการณ์ TargetComplete จำเป็นต้องมี important_outputs เพื่อให้ Bazel ผสานรวมกับ ResultStore/BTX

แท็ก affects_outputs

--logging=<0 <= an integer <= 6> ค่าเริ่มต้น: "3"

ระดับการบันทึก

แท็ก affects_outputs

--memory_profile=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ ให้เขียนข้อมูลการใช้หน่วยความจำลงในไฟล์ที่ระบุเมื่อสิ้นสุดเฟส และเขียนฮีปที่เสถียรลงในบันทึกหลักเมื่อสิ้นสุดการสร้าง

แท็ก bazel_monitoring

--memory_profile_stable_heap_parameters=<integers, separated by a comma expected in pairs> ค่าเริ่มต้น: "1,0"

ปรับการคำนวณฮีปที่เสถียรของโปรไฟล์หน่วยความจำเมื่อสิ้นสุดการสร้าง ควรเป็นจำนวนเต็มคู่ที่คั่นด้วยคอมมา ในแต่ละคู่ จำนวนเต็มแรกคือจำนวน GC ที่จะดำเนินการ จำนวนเต็มที่ 2 ในแต่ละคู่คือจำนวนวินาทีที่จะรอระหว่าง GC เช่น 2,4,4,0 จะมี 2 GC ที่หยุดชั่วคราว 4 วินาที ตามด้วย 4 GC ที่หยุดชั่วคราว 0 วินาที

แท็ก bazel_monitoring

--profile=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ ให้สร้างโปรไฟล์ Bazel และเขียนข้อมูลลงในไฟล์ที่ระบุ ดูข้อมูลเพิ่มเติมได้ที่ https://bazel.build/advanced/performance/json-trace-profile

แท็ก bazel_monitoring

--profiles_to_retain=<an integer> ค่าเริ่มต้น: "5"

จำนวนโปรไฟล์ที่จะเก็บไว้ในฐานเอาต์พุต หากมีโปรไฟล์มากกว่าจำนวนนี้ในฐานเอาต์พุต ระบบจะลบโปรไฟล์ที่เก่าที่สุดออกจนกว่าจำนวนทั้งหมดจะต่ำกว่าขีดจำกัด

แท็ก bazel_monitoring

--[no]record_full_profiler_data ค่าเริ่มต้น: "false"

โดยค่าเริ่มต้น โปรไฟล์เลอร์ Bazel จะบันทึกเฉพาะข้อมูลรวมสำหรับเหตุการณ์ที่รวดเร็วแต่มีจำนวนมาก (เช่น การแสดงสถิติของไฟล์) หากเปิดใช้ตัวเลือกนี้ โปรไฟล์เลอร์จะบันทึกแต่ละเหตุการณ์ ซึ่งจะส่งผลให้ข้อมูลการสร้างโปรไฟล์มีความแม่นยำมากขึ้น แต่ประสิทธิภาพจะลดลงมาก ตัวเลือกจะมีผลก็ต่อเมื่อใช้ --profile ด้วย

แท็ก bazel_monitoring

--[no]redirect_local_instrumentation_output_writes ค่าเริ่มต้น: "false"

หากเป็นจริงและรองรับ ระบบจะเปลี่ยนเส้นทางการส่งออกของเครื่องมือวัดให้เขียนในเครื่องอื่นที่ไม่ใช่เครื่องที่ Bazel ทำงานอยู่

แท็ก bazel_monitoring

--remote_print_execution_messages=<failure, success or all> ค่าเริ่มต้น: "failure"

เลือกเวลาที่จะพิมพ์ข้อความการดำเนินการจากระยะไกล ค่าที่ถูกต้องคือ failure สำหรับพิมพ์เฉพาะเมื่อล้มเหลว success สำหรับพิมพ์เฉพาะเมื่อสำเร็จ และ all สำหรับพิมพ์เสมอ

แท็ก terminal_output

--[no]slim_profile ค่าเริ่มต้น: "จริง"

ลดขนาดโปรไฟล์ JSON โดยการผสานเหตุการณ์หากโปรไฟล์มีขนาดใหญ่เกินไป

แท็ก bazel_monitoring

--starlark_cpu_profile=<a string> ค่าเริ่มต้น: ""

เขียนโปรไฟล์ pprof ของการใช้งาน CPU โดยเธรด Starlark ทั้งหมดลงในไฟล์ที่ระบุ

แท็ก bazel_monitoring

--tool_tag=<a string> ค่าเริ่มต้น: ""

ชื่อเครื่องมือที่จะระบุการเรียกใช้ Bazel นี้

แท็ก affects_outputs, bazel_monitoring

--ui_event_filters=<Convert list of comma separated event kind to list of filters> มีการสะสมการใช้งานหลายครั้ง

ระบุเหตุการณ์ที่จะแสดงใน UI คุณเพิ่มหรือนำเหตุการณ์ออกจากเหตุการณ์เริ่มต้นได้โดยใช้ +/- ที่นำหน้า หรือจะลบล้างชุดเริ่มต้นทั้งหมดด้วยการกําหนดโดยตรงก็ได้ ชุดประเภทเหตุการณ์ที่รองรับ ได้แก่ INFO, DEBUG, ERROR และอื่นๆ

แท็ก terminal_output

--[no]write_command_log ค่าเริ่มต้น: "false"

จะเขียนไฟล์ command.log หรือไม่

แท็ก bazel_monitoring

ตัวเลือกการแคชและการดำเนินการจากระยะไกล
--downloader_config=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไฟล์เพื่อกำหนดค่าโปรแกรมดาวน์โหลดระยะไกล ไฟล์นี้ประกอบด้วยบรรทัดต่างๆ ซึ่งแต่ละบรรทัดจะเริ่มต้นด้วยคำสั่ง (allow, block หรือ rewrite) ตามด้วยชื่อโฮสต์ (สำหรับ allow และ block) หรือรูปแบบ 2 รูปแบบ รูปแบบหนึ่งเพื่อใช้ในการจับคู่ และอีกรูปแบบหนึ่งเพื่อใช้เป็น URL แทนที่ โดยมีการอ้างอิงย้อนกลับซึ่งเริ่มต้นจาก $1 คุณระบุคำสั่ง rewrite หลายรายการสำหรับ URL เดียวกันได้ และในกรณีนี้ระบบจะแสดง URL หลายรายการ

--experimental_circuit_breaker_strategy=<failure> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุกลยุทธ์ที่เบรกเกอร์วงจรจะใช้ กลยุทธ์ที่ใช้ได้คือ "failure" หากค่าของตัวเลือกไม่ถูกต้อง ลักษณะการทำงานจะเหมือนกับไม่ได้ตั้งค่าตัวเลือก

แท็ก execution

--experimental_remote_cache_compression_threshold=<an integer> ค่าเริ่มต้น: "100"

ขนาด Blob ขั้นต่ำที่จำเป็นในการบีบอัด/คลายการบีบอัดด้วย zstd จะไม่มีผลเว้นแต่จะตั้งค่า --remote_cache_compression

--[no]experimental_remote_cache_lease_extension ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" Bazel จะขยายสัญญาเช่าสำหรับเอาต์พุตของการดำเนินการระยะไกลระหว่างการสร้างโดยการส่งการเรียกใช้ FindMissingBlobs เป็นระยะไปยังแคชระยะไกล ความถี่จะอิงตามค่าของ --experimental_remote_cache_ttl

--experimental_remote_cache_ttl=<An immutable length of time.> ค่าเริ่มต้น: "3h"

TTL ขั้นต่ำที่รับประกันของ Blob ในแคชระยะไกลหลังจากที่มีการอ้างอิง Digest ของ Blob นั้นล่าสุด เช่น โดย ActionResult หรือ FindMissingBlobs Bazel ทำการเพิ่มประสิทธิภาพหลายอย่างตาม TTL ของ Blob เช่น ไม่เรียกใช้ GetActionResult ซ้ำๆ ในการสร้างแบบเพิ่ม ควรตั้งค่าให้ต่ำกว่า TTL จริงเล็กน้อย เนื่องจากมีช่องว่างระหว่างเวลาที่เซิร์ฟเวอร์ส่งคืนข้อมูลสรุปกับเวลาที่ Bazel ได้รับข้อมูลสรุป

แท็ก execution

--experimental_remote_capture_corrupted_outputs=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางไปยังไดเรกทอรีที่จะบันทึกเอาต์พุตที่เสียหาย

--[no]experimental_remote_discard_merkle_trees ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น true ให้ทิ้งสำเนาในหน่วยความจำของต้นไม้ Merkle ของรูทอินพุตและการแมปอินพุตที่เชื่อมโยงระหว่างการเรียก GetActionResult() และ Execute() ซึ่งจะช่วยลดการใช้หน่วยความจำได้อย่างมาก แต่ต้องให้ Bazel คำนวณใหม่เมื่อแคชระยะไกลไม่พบและมีการลองใหม่

--experimental_remote_downloader=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

URI ของปลายทาง Remote Asset API ที่จะใช้เป็นพร็อกซีการดาวน์โหลดจากระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ดูที่ https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto

--[no]experimental_remote_downloader_local_fallback ค่าเริ่มต้น: "false"

จะกลับไปใช้โปรแกรมดาวน์โหลดในเครื่องหรือไม่หากโปรแกรมดาวน์โหลดระยะไกลล้มเหลว

--[no]experimental_remote_downloader_propagate_credentials ค่าเริ่มต้น: "false"

จะส่งต่อข้อมูลเข้าสู่ระบบจาก netrc และโปรแกรมช่วยจัดการข้อมูลเข้าสู่ระบบไปยังเซิร์ฟเวอร์ดาวน์โหลดระยะไกลหรือไม่ การติดตั้งใช้งานเซิร์ฟเวอร์ต้องรองรับตัวระบุ http_header_url:&lt;url-index&gt;:&lt;header-key&gt; ใหม่ โดยที่ &lt;url-index&gt; คือตำแหน่งแบบ 0 ของ URL ภายในฟิลด์ uris ของ FetchBlobRequest ส่วนหัวที่เฉพาะเจาะจง URL ควรมีความสำคัญสูงกว่าส่วนหัวทั่วไป

--[no]experimental_remote_execution_keepalive ค่าเริ่มต้น: "false"

ว่าจะใช้ Keepalive สำหรับการเรียกใช้การดำเนินการจากระยะไกลหรือไม่

--experimental_remote_failure_rate_threshold=<an integer in 0-100 range> ค่าเริ่มต้น: "10"

กำหนดจำนวนอัตราความล้มเหลวที่อนุญาตเป็นเปอร์เซ็นต์สำหรับกรอบเวลาที่เฉพาะเจาะจง หลังจากนั้นระบบจะหยุดเรียกแคช/ตัวดำเนินการระยะไกล โดยค่าเริ่มต้น ค่านี้จะเป็น 10 การตั้งค่านี้เป็น 0 หมายความว่าไม่มีข้อจำกัด

แท็ก execution

--experimental_remote_failure_window_interval=<An immutable length of time.> ค่าเริ่มต้น: "60s"

ช่วงเวลาที่ใช้ในการคำนวณอัตราความล้มเหลวของคำขอระยะไกล หากค่าเป็น 0 หรือค่าลบ ระบบจะคำนวณระยะเวลาที่ล้มเหลวตลอดระยะเวลาการดำเนินการทั้งหมด คุณสามารถใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

แท็ก execution

--[no]experimental_remote_mark_tool_inputs ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" Bazel จะทำเครื่องหมายอินพุตเป็นอินพุตเครื่องมือสำหรับตัวดำเนินการระยะไกล ซึ่งใช้เพื่อติดตั้งใช้งาน Worker แบบถาวรระยะไกลได้

--[no]experimental_remote_merkle_tree_cache ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ระบบจะบันทึกการคำนวณต้นไม้ Merkle เพื่อปรับปรุงความเร็วในการตรวจสอบการเข้าชมแคชระยะไกล ระบบจะควบคุมปริมาณหน่วยความจำของแคชโดยใช้ --experimental_remote_merkle_tree_cache_size

--experimental_remote_merkle_tree_cache_size=<a long integer> ค่าเริ่มต้น: "1000"

จำนวนต้นไม้ Merkle ที่จะบันทึกเพื่อปรับปรุงความเร็วในการตรวจสอบการเข้าชมแคชระยะไกล แม้ว่าระบบจะล้างแคชโดยอัตโนมัติตามการจัดการการอ้างอิงแบบอ่อนของ Java แต่ข้อผิดพลาดหน่วยความจำไม่เพียงพออาจเกิดขึ้นได้หากตั้งค่าสูงเกินไป หากตั้งค่าเป็น 0 ระบบจะไม่จำกัดขนาดแคช ค่าที่เหมาะสมจะแตกต่างกันไปตามขนาดของโปรเจ็กต์ ค่าเริ่มต้นคือ 1,000

--experimental_remote_output_service=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

HOST หรือ HOST:PORT ของปลายทางบริการเอาต์พุตระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc:// หรือ unix: เพื่อปิดใช้ TLS

--experimental_remote_output_service_output_path_prefix=<a string> ค่าเริ่มต้น: ""

เส้นทางที่วางเนื้อหาของไดเรกทอรีเอาต์พุตซึ่งจัดการโดย --experimental_remote_output_service ไดเรกทอรีเอาต์พุตจริงที่บิลด์ใช้จะเป็นไดเรกทอรีย่อยของเส้นทางนี้และกำหนดโดยบริการเอาต์พุต

--[no]experimental_remote_require_cached ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ให้บังคับแคชการดำเนินการทั้งหมดที่เรียกใช้จากระยะไกลได้ หรือไม่เช่นนั้นจะทำให้บิลด์ล้มเหลว ซึ่งจะเป็นประโยชน์ในการแก้ปัญหาเกี่ยวกับความไม่แน่นอน เนื่องจากช่วยให้ตรวจสอบได้ว่าการดำเนินการที่ควรแคชนั้นแคชจริงหรือไม่ โดยไม่ต้องแทรกผลลัพธ์ใหม่ที่ไม่เกี่ยวข้องลงในแคช

--experimental_remote_scrubbing_config=<Converts to a Scrubber> ค่าเริ่มต้น: ดูคำอธิบาย

เปิดใช้การล้างคีย์แคชระยะไกลด้วยไฟล์การกำหนดค่าที่ระบุ ซึ่งต้องเป็นบัฟเฟอร์โปรโตคอลในรูปแบบข้อความ (ดู src/main/protobuf/remote_scrubbing.proto)

ฟีเจอร์นี้มีไว้เพื่ออำนวยความสะดวกในการแชร์แคชระยะไกล/ดิสก์ระหว่างการดำเนินการที่ทำงานบนแพลตฟอร์มต่างๆ แต่กำหนดเป้าหมายไปยังแพลตฟอร์มเดียวกัน ควรใช้อย่างระมัดระวังเป็นอย่างยิ่ง เนื่องจากหากตั้งค่าไม่เหมาะสมอาจทำให้มีการแชร์รายการในแคชโดยไม่ตั้งใจและทำให้บิลด์ไม่ถูกต้อง

การกรอจะไม่ส่งผลต่อวิธีดำเนินการ แต่จะส่งผลต่อวิธีคำนวณคีย์แคชระยะไกล/ดิสก์เพื่อวัตถุประสงค์ในการเรียกข้อมูลหรือจัดเก็บผลลัพธ์ของการดำเนินการเท่านั้น การดำเนินการที่ลบออกใช้ร่วมกับการดำเนินการจากระยะไกลไม่ได้ และจะดำเนินการในเครื่องเสมอ

การแก้ไขการกำหนดค่าการกวาดล้างจะไม่ทำให้เอาต์พุตที่อยู่ในระบบไฟล์ในเครื่องหรือแคชภายในไม่ถูกต้อง คุณจะต้องสร้างคลีนบิลด์เพื่อดำเนินการที่ได้รับผลกระทบอีกครั้ง

หากต้องการใช้ฟีเจอร์นี้ให้สำเร็จ คุณอาจต้องตั้งค่า --host_platform ที่กำหนดเองพร้อมกับ --experimental_platform_in_output_dir (เพื่อทำให้คำนำหน้าเอาต์พุตเป็นมาตรฐาน) และ --incompatible_strict_action_env (เพื่อทำให้ตัวแปรสภาพแวดล้อมเป็นมาตรฐาน)

--[no]guard_against_concurrent_changes ค่าเริ่มต้น: "lite"

ตั้งค่าเป็น "full" เพื่อเปิดใช้การตรวจสอบ ctime ของไฟล์อินพุตทั้งหมดของการดำเนินการก่อนอัปโหลดไปยังแคชระยะไกล อาจมีกรณีที่เคอร์เนล Linux หน่วงเวลาการเขียนไฟล์ ซึ่งอาจทำให้เกิดผลบวกเท็จ ค่าเริ่มต้นคือ "lite" ซึ่งจะตรวจสอบเฉพาะไฟล์ต้นฉบับในที่เก็บหลัก การตั้งค่านี้เป็น "ปิด" จะเป็นการปิดใช้การตรวจสอบทั้งหมด เราไม่แนะนำให้ทำเช่นนี้ เนื่องจากแคชอาจเสียหายเมื่อมีการเปลี่ยนแปลงไฟล์ต้นฉบับขณะที่การดำเนินการที่ใช้ไฟล์ดังกล่าวเป็นอินพุตกำลังทำงานอยู่

แท็ก execution

--[no]remote_accept_cached ค่าเริ่มต้น: "จริง"

ว่าจะยอมรับผลการดำเนินการที่แคชไว้จากระยะไกลหรือไม่

--remote_build_event_upload=<all or minimal> ค่าเริ่มต้น: "น้อยที่สุด"

หากตั้งค่าเป็น "all" ระบบจะอัปโหลดเอาต์พุตในเครื่องทั้งหมดที่ BEP อ้างอิงไปยังแคชระยะไกล หากตั้งค่าเป็น "น้อยที่สุด" ระบบจะไม่โหลดเอาต์พุตในเครื่องที่ BEP อ้างอิงไปยังแคชระยะไกล ยกเว้นไฟล์ที่สำคัญต่อผู้ใช้ BEP (เช่น บันทึกการทดสอบและโปรไฟล์เวลา) ระบบจะใช้รูปแบบ bytestream:// สำหรับ URI ของไฟล์เสมอแม้ว่าจะไม่มีไฟล์ในแคชระยะไกลก็ตาม ค่าเริ่มต้นคือ "น้อยที่สุด"

--remote_bytestream_uri_prefix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อโฮสต์และชื่ออินสแตนซ์ที่จะใช้ใน URI ของ bytestream:// ที่เขียนลงในสตรีมเหตุการณ์การสร้าง คุณตั้งค่าตัวเลือกนี้ได้เมื่อทำการบิลด์โดยใช้พร็อกซี ซึ่งจะทำให้ค่าของ --remote_executor และ --remote_instance_name ไม่สอดคล้องกับชื่อที่แน่นอนของบริการการดำเนินการจากระยะไกลอีกต่อไป หากไม่ได้ตั้งค่าไว้ ค่าเริ่มต้นจะเป็น "${hostname}/${instance_name}"

--remote_cache=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

URI ของปลายทางการแคช สคีมาที่รองรับ ได้แก่ http, https, grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc://, http:// หรือ unix: เพื่อปิดใช้ TLS ดู https://bazel.build/remote/caching

--[no]remote_cache_async ค่าเริ่มต้น: "จริง"

หากเป็น "จริง" การอัปโหลดผลลัพธ์ของการดำเนินการไปยังแคชในดิสก์หรือแคชระยะไกลจะเกิดขึ้นในเบื้องหลังแทนที่จะบล็อกการดำเนินการให้เสร็จสมบูรณ์ การดำเนินการบางอย่างไม่สามารถใช้ร่วมกับการอัปโหลดในเบื้องหลังได้ และอาจยังคงบล็อกแม้ว่าจะตั้งค่าสถานะนี้แล้วก็ตาม

--[no]remote_cache_compression ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้บีบอัด/คลายการบีบอัด Blob ของแคชด้วย zstd เมื่อมีขนาดอย่างน้อย --experimental_remote_cache_compression_threshold

--remote_cache_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอแคช: --remote_cache_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_default_exec_properties=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตั้งค่าพร็อพเพอร์ตี้ exec เริ่มต้นที่จะใช้เป็นแพลตฟอร์มการดำเนินการระยะไกล หากแพลตฟอร์มการดำเนินการยังไม่ได้ตั้งค่า exec_properties

แท็ก affects_outputs

--remote_default_platform_properties=<a string> ค่าเริ่มต้น: ""

ตั้งค่าพร็อพเพอร์ตี้แพลตฟอร์มเริ่มต้นที่จะตั้งค่าสำหรับ Remote Execution API หากแพลตฟอร์มการดำเนินการยังไม่ได้ตั้งค่า remote_execution_properties ระบบจะใช้ค่านี้ด้วยหากเลือกแพลตฟอร์มโฮสต์เป็นแพลตฟอร์มการดำเนินการสำหรับการดำเนินการจากระยะไกล

--remote_download_regex=<a valid Java regular expression> มีการสะสมการใช้งานหลายครั้ง

บังคับให้ดาวน์โหลดเอาต์พุตการสร้างระยะไกลที่มีเส้นทางตรงกับรูปแบบนี้ โดยไม่คำนึงถึง --remote_download_outputs คุณระบุรูปแบบหลายรูปแบบได้โดยใช้แฟล็กนี้ซ้ำ

แท็ก affects_outputs

--remote_downloader_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอโปรแกรมดาวน์โหลดระยะไกล: --remote_downloader_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_exec_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอการดำเนินการ: --remote_exec_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_execution_priority=<an integer> ค่าเริ่มต้น: "0"

ลำดับความสำคัญของการดำเนินการที่จะดำเนินการจากระยะไกล ความหมายของค่าลำดับความสำคัญที่เฉพาะเจาะจงจะขึ้นอยู่กับเซิร์ฟเวอร์

--remote_executor=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

HOST หรือ HOST:PORT ของปลายทางการดำเนินการระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc:// หรือ unix: เพื่อปิดใช้ TLS

--remote_grpc_log=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ เส้นทางไปยังไฟล์เพื่อบันทึกรายละเอียดที่เกี่ยวข้องกับการเรียก gRPC บันทึกนี้ประกอบด้วยลำดับของ com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry protobufs ที่ทำให้เป็นอนุกรม โดยมีข้อความแต่ละรายการนำหน้าด้วย varint ที่ระบุขนาดของข้อความ protobuf ที่ทำให้เป็นอนุกรมต่อไปนี้ ตามที่ดำเนินการโดยเมธอด LogEntry.writeDelimitedTo(OutputStream)

--remote_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอ: --remote_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_instance_name=<a string> ค่าเริ่มต้น: ""

ค่าที่จะส่งเป็น instance_name ใน Remote Execution API

--[no]remote_local_fallback ค่าเริ่มต้น: "false"

ว่าจะกลับไปใช้กลยุทธ์การดำเนินการในเครื่องแบบสแตนด์อโลนหรือไม่ หากการดำเนินการจากระยะไกลล้มเหลว

--remote_local_fallback_strategy=<a string> ค่าเริ่มต้น: "local"

เลิกใช้งานแล้ว ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7480

--remote_max_connections=<an integer> ค่าเริ่มต้น: "100"

จำกัดจำนวนการเชื่อมต่อพร้อมกันสูงสุดกับแคช/ตัวดำเนินการระยะไกล โดยค่าเริ่มต้น ค่านี้จะเป็น 100 การตั้งค่านี้เป็น 0 หมายความว่าไม่มีข้อจำกัด สำหรับแคชระยะไกล HTTP การเชื่อมต่อ TCP 1 รายการจะจัดการคำขอได้ 1 รายการในครั้งเดียว ดังนั้น Bazel จึงสามารถส่งคำขอพร้อมกันได้สูงสุด --remote_max_connections สำหรับแคช/ตัวดำเนินการระยะไกล gRPC โดยปกติแล้วช่อง gRPC 1 ช่องจะจัดการคำขอพร้อมกันได้มากกว่า 100 รายการ ดังนั้น Bazel จึงส่งคำขอพร้อมกันได้ประมาณ --remote_max_connections * 100 รายการ

แท็ก host_machine_resource_optimizations

--remote_proxy=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เชื่อมต่อกับแคชระยะไกลผ่านพร็อกซี ปัจจุบันนี้ คุณใช้แฟล็กนี้ได้เฉพาะในการกำหนดค่า Unix Domain Socket (unix:/path/to/socket)

--remote_result_cache_priority=<an integer> ค่าเริ่มต้น: "0"

ลำดับความสำคัญที่เกี่ยวข้องของการดำเนินการระยะไกลที่จะจัดเก็บไว้ในแคชระยะไกล ความหมายของค่าลำดับความสำคัญที่เฉพาะเจาะจงจะขึ้นอยู่กับเซิร์ฟเวอร์

--remote_retries=<an integer> ค่าเริ่มต้น: "5"

จำนวนครั้งสูงสุดที่พยายามลองใหม่เมื่อเกิดข้อผิดพลาดชั่วคราว หากตั้งค่าเป็น 0 ระบบจะปิดใช้การลองใหม่

--remote_retry_max_delay=<An immutable length of time.> ค่าเริ่มต้น: "5s"

การหน่วงเวลา Backoff สูงสุดระหว่างการลองใหม่จากระยะไกล คุณใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

--remote_timeout=<An immutable length of time.> ค่าเริ่มต้น: "60s"

ระยะเวลาสูงสุดที่จะรอการเรียกใช้ระยะไกลและการเรียกแคช สำหรับแคช REST นี่คือทั้งการเชื่อมต่อและการหมดเวลาในการอ่าน คุณใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

--[no]remote_upload_local_results ค่าเริ่มต้น: "จริง"

ว่าจะอัปโหลดผลลัพธ์ของการดำเนินการที่เรียกใช้ในเครื่องไปยังแคชระยะไกลหรือไม่ หากแคชระยะไกลรองรับและผู้ใช้ได้รับอนุญาตให้ดำเนินการดังกล่าว

--[no]remote_verify_downloads ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น true Bazel จะคำนวณผลรวมแฮชของการดาวน์โหลดจากระยะไกลทั้งหมด และทิ้งค่าที่แคชจากระยะไกลหากไม่ตรงกับค่าที่คาดไว้

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--build_metadata=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

คู่สตริงคีย์-ค่าที่กำหนดเองเพื่อระบุในเหตุการณ์บิลด์

แท็ก terminal_output

--color=<yes, no or auto> ค่าเริ่มต้น: "auto"

ใช้ตัวควบคุมเทอร์มินัลเพื่อใส่สีเอาต์พุต

--config=<a string> มีการสะสมการใช้งานหลายครั้ง

เลือกส่วนการกำหนดค่าเพิ่มเติมจากไฟล์ rc สำหรับทุก <command> จะดึงตัวเลือกจาก <command>:<config> ด้วย หากมีส่วนดังกล่าว หากไม่มีส่วนนี้ในไฟล์ .rc ใดๆ Blaze จะล้มเหลวพร้อมข้อผิดพลาด ส่วนการกำหนดค่าและการผสมค่าสถานะที่เทียบเท่าจะอยู่ในไฟล์การกำหนดค่า 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.> มีการสะสมการใช้งานหลายครั้ง

กำหนดค่าโปรแกรมช่วยข้อมูลเข้าสู่ระบบตาม <a href="https://github.com/EngFlow/credential-helper-spec">ข้อกำหนดของโปรแกรมช่วยข้อมูลเข้าสู่ระบบ</a>เพื่อใช้ในการดึงข้อมูลเข้าสู่ระบบการให้สิทธิ์สำหรับการดึงข้อมูลที่เก็บ การแคชและการดำเนินการระยะไกล และบริการเหตุการณ์การสร้าง

ข้อมูลเข้าสู่ระบบที่ตัวช่วยระบุจะมีความสำคัญเหนือกว่าข้อมูลเข้าสู่ระบบที่ --google_default_credentials, --google_credentials, ไฟล์ .netrc หรือพารามิเตอร์การให้สิทธิ์ระบุไปยัง repository_ctx.download() และ repository_ctx.download_and_extract()

ระบุได้หลายครั้งเพื่อตั้งค่าผู้ช่วยหลายราย

ดูวิธีการได้ที่ https://blog.engflow.com/2023/10/09/configuring-bazels-credential-helper/

--credential_helper_cache_duration=<An immutable length of time.> เริ่มต้น: "30m"

ระยะเวลาในการแคชข้อมูลเข้าสู่ระบบหากโปรแกรมช่วยเหลือด้านข้อมูลเข้าสู่ระบบไม่แสดงเวลาหมดอายุ การเปลี่ยนค่าของฟีเจอร์นี้จะล้างแคช

--credential_helper_timeout=<An immutable length of time.> ค่าเริ่มต้น: "10s"

กำหนดค่าการหมดเวลาสำหรับโปรแกรมช่วยเหลือด้านข้อมูลเข้าสู่ระบบ

หากผู้ช่วยจัดการข้อมูลเข้าสู่ระบบไม่ตอบกลับภายในระยะหมดเวลานี้ การเรียกใช้จะล้มเหลว

--curses=<yes, no or auto> ค่าเริ่มต้น: "auto"

ใช้การควบคุมเคอร์เซอร์ของเทอร์มินัลเพื่อลดเอาต์พุตการเลื่อน

--disk_cache=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางไปยังไดเรกทอรีที่ Bazel อ่านและเขียนการดำเนินการและเอาต์พุตของการดำเนินการได้ หากยังไม่มีไดเรกทอรี ระบบจะสร้างให้

--[no]enable_platform_specific_config ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะเลือกบรรทัดการกำหนดค่าเฉพาะระบบปฏิบัติการโฮสต์จากไฟล์ bazelrc เช่น หากระบบปฏิบัติการโฮสต์เป็น Linux และคุณเรียกใช้ bazel build Bazel จะเลือกบรรทัดที่ขึ้นต้นด้วย build:linux ตัวระบุระบบปฏิบัติการที่รองรับ ได้แก่ linux, macos, windows, freebsd และ openbsd การเปิดใช้ฟีเจอร์นี้จะเทียบเท่ากับการใช้ --config=linux ใน Linux, --config=windows ใน Windows และอื่นๆ

--experimental_action_cache_gc_idle_delay=<An immutable length of time.> ค่าเริ่มต้น: "5m"

ระยะเวลาที่เซิร์ฟเวอร์ต้องไม่ได้ใช้งานก่อนที่จะพยายามทำการเก็บขยะของแคชการดำเนินการ ไม่มีผลเว้นแต่ --experimental_action_cache_gc_max_age จะไม่ใช่ 0

แท็ก host_machine_resource_optimizations

--experimental_action_cache_gc_max_age=<An immutable length of time.> ค่าเริ่มต้น: "0"

หากตั้งค่าเป็นค่าที่ไม่ใช่ 0 ระบบจะล้างข้อมูลแคชการดำเนินการเป็นระยะๆ เพื่อนำรายการที่เก่ากว่าอายุนี้ออก การเก็บขยะจะเกิดขึ้นในเบื้องหลังเมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตามที่กำหนดโดยแฟล็ก --experimental_action_cache_gc_idle_delay และ --experimental_action_cache_gc_threshold

แท็ก host_machine_resource_optimizations

--experimental_action_cache_gc_threshold=<an integer in 0-100 range> ค่าเริ่มต้น: "10"

เปอร์เซ็นต์ของรายการแคชการดำเนินการที่ล้าสมัยที่ต้องใช้เพื่อทริกเกอร์การเก็บขยะ ไม่มีผลเว้นแต่ --experimental_action_cache_gc_max_age จะไม่ใช่ 0

แท็ก host_machine_resource_optimizations

--experimental_disk_cache_gc_idle_delay=<An immutable length of time.> ค่าเริ่มต้น: "5m"

ระยะเวลาที่เซิร์ฟเวอร์ต้องไม่ได้ใช้งานก่อนที่จะมีการล้างข้อมูลแคชในดิสก์ หากต้องการระบุนโยบายการเก็บขยะ ให้ตั้งค่า --experimental_disk_cache_gc_max_size และ/หรือ --experimental_disk_cache_gc_max_age

--experimental_disk_cache_gc_max_age=<An immutable length of time.> ค่าเริ่มต้น: "0"

หากตั้งค่าเป็นค่าบวก ระบบจะล้างข้อมูลในแคชดิสก์เป็นระยะๆ เพื่อนำรายการที่เก่ากว่าอายุนี้ออก หากตั้งค่าร่วมกับ --experimental_disk_cache_gc_max_size ระบบจะใช้ทั้ง 2 เกณฑ์ การเก็บขยะจะเกิดขึ้นในเบื้องหลังเมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตามที่กำหนดโดยแฟล็ก --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> ค่าเริ่มต้น: "0"

หากตั้งค่าเป็นค่าบวก ระบบจะทำการล้างข้อมูลที่ไม่ใช้แล้วในแคชของดิสก์เป็นระยะๆ เพื่อให้มีขนาดไม่เกินขนาดนี้ หากตั้งค่าร่วมกับ --experimental_disk_cache_gc_max_age ระบบจะใช้ทั้ง 2 เกณฑ์ การเก็บขยะจะเกิดขึ้นในเบื้องหลังเมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตามที่กำหนดโดยแฟล็ก --experimental_disk_cache_gc_idle_delay

--[no]experimental_enable_thread_dump ค่าเริ่มต้น: "false"

จะเปิดใช้การดัมพ์เธรดหรือไม่ หากเป็นจริง Bazel จะทิ้งสถานะของทุกเธรด (รวมถึงเธรดเสมือน) ลงในไฟล์ทุกๆ --experimental_thread_dump_interval หรือหลังจากที่การดำเนินการไม่ทำงานเป็นระยะเวลา --experimental_thread_dump_action_execution_inactivity_duration ระบบจะเขียนข้อมูลการทิ้งไปยังไดเรกทอรี <output_base>/server/thread_dumps/

แท็ก bazel_monitoring

--experimental_install_base_gc_max_age=<An immutable length of time.> ค่าเริ่มต้น: "30d"

ระยะเวลาที่ต้องไม่มีการใช้งานฐานการติดตั้งก่อนจึงจะมีสิทธิ์สำหรับการเก็บขยะ หากไม่ใช่ 0 เซิร์ฟเวอร์จะพยายามล้างข้อมูลที่ไม่ได้ใช้ของฐานการติดตั้งอื่นๆ เมื่อไม่ได้ใช้งาน

แท็ก host_machine_resource_optimizations

--[no]experimental_rule_extension_api ค่าเริ่มต้น: "จริง"

เปิดใช้ API ส่วนขยายกฎทดลองและ API กฎย่อย

แท็ก loading_and_analysis, experimental

--experimental_thread_dump_action_execution_inactivity_duration=<An immutable length of time.> ค่าเริ่มต้น: "0"

ทิ้งเธรดเมื่อการดำเนินการไม่ทำงานเป็นระยะเวลานี้ หากเป็น 0 ระบบจะไม่เขียนการดัมพ์เธรดสำหรับการดำเนินการที่ไม่ได้ใช้งาน

แท็ก bazel_monitoring

--experimental_thread_dump_interval=<An immutable length of time.> ค่าเริ่มต้น: "0"

ความถี่ในการทิ้งเธรดเป็นระยะ หากเป็น 0 ระบบจะไม่เขียน Thread Dump เป็นระยะๆ

แท็ก bazel_monitoring

--[no]experimental_windows_watchfs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเปิดใช้การรองรับ Windows เวอร์ชันทดลองสำหรับ --watchfs มิฉะนั้น watchfs จะไม่ทำงานใน Windows อย่าลืมเปิดใช้ --watchfs ด้วย

--google_auth_scopes=<comma-separated list of options> default: "https://www.googleapis.com/auth/cloud-platform"

รายการขอบเขตการตรวจสอบสิทธิ์ของ Google Cloud ที่คั่นด้วยคอมมา

--google_credentials=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไฟล์ที่จะรับข้อมูลเข้าสู่ระบบการตรวจสอบสิทธิ์ ดูรายละเอียดได้ที่ https://cloud.google.com/docs/authentication

--[no]google_default_credentials ค่าเริ่มต้น: "false"

ว่าจะใช้ "ข้อมูลรับรองเริ่มต้นของแอปพลิเคชันของ Google" สำหรับการตรวจสอบสิทธิ์หรือไม่ ดูรายละเอียดได้ที่ https://cloud.google.com/docs/authentication ปิดใช้โดยค่าเริ่มต้น

--grpc_keepalive_time=<An immutable length of time.> ค่าเริ่มต้น: ดูคำอธิบาย

กำหนดค่า Ping Keep-Alive สำหรับการเชื่อมต่อ gRPC ขาออก หากตั้งค่านี้ไว้ Bazel จะส่งการ Ping หลังจากไม่มีการดำเนินการอ่านในการเชื่อมต่อเป็นเวลานานเท่านี้ แต่จะส่งก็ต่อเมื่อมีการเรียก gRPC ที่รอดำเนินการอย่างน้อย 1 รายการ ระบบจะถือว่าเวลาเป็นระดับความละเอียดของวินาที การตั้งค่าที่น้อยกว่า 1 วินาทีถือเป็นข้อผิดพลาด โดยค่าเริ่มต้น ระบบจะปิดใช้ Ping Keep-Alive คุณควรประสานงานกับเจ้าของบริการก่อนที่จะเปิดใช้การตั้งค่านี้ เช่น หากต้องการตั้งค่าเป็น 30 วินาทีสำหรับ Flag นี้ ให้ทำดังนี้ --grpc_keepalive_time=30s

--grpc_keepalive_timeout=<An immutable length of time.> ค่าเริ่มต้น: "20s"

กำหนดค่าการหมดเวลา Keep-Alive สำหรับการเชื่อมต่อ gRPC ขาออก หากเปิดใช้คำสั่ง ping keep-alive ด้วย --grpc_keepalive_time Bazel จะหมดเวลาการเชื่อมต่อหากไม่ได้รับการตอบกลับคำสั่ง ping หลังจากระยะเวลาดังกล่าว ระบบจะถือว่าเวลาเป็นระดับความละเอียดของวินาที การตั้งค่าที่น้อยกว่า 1 วินาทีถือเป็นข้อผิดพลาด หากปิดใช้ Ping Keep-Alive ระบบจะไม่สนใจการตั้งค่านี้

--[no]incompatible_disable_non_executable_java_binary ค่าเริ่มต้น: "false"

หากเป็นจริง java_binary จะเรียกใช้ได้เสมอ ระบบจะนำแอตทริบิวต์ create_executable ออก

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_repo_env_ignores_action_env ค่าเริ่มต้น: "จริง"

หากเป็นจริง <code>--action_env=NAME=VALUE</code> จะไม่มีผลต่อสภาพแวดล้อมของกฎที่เก็บและส่วนขยายโมดูลอีกต่อไป

แท็ก loading_and_analysis, incompatible_change

--inject_repository=<an equals-separated mapping of repository name to path> มีการสะสมการใช้งานหลายครั้ง

เพิ่มที่เก็บใหม่ที่มีเส้นทางในเครื่องในรูปแบบ <ชื่อที่เก็บ>=<เส้นทาง> ซึ่งจะมีผลเฉพาะเมื่อใช้ --enable_bzlmod และเทียบเท่ากับการเพิ่ม local_repository ที่สอดคล้องกันลงในไฟล์ MODULE.bazel ของโมดูลรูทผ่าน use_repo_rule หากเส้นทางที่ระบุเป็นเส้นทางสมบูรณ์ ระบบจะใช้เส้นทางดังกล่าวตามที่ระบุ หากเส้นทางที่ระบุเป็นเส้นทางสัมพัทธ์ เส้นทางดังกล่าวจะสัมพันธ์กับไดเรกทอรีการทำงานปัจจุบัน หากเส้นทางที่ระบุเริ่มต้นด้วย "%workspace%" เส้นทางนั้นจะสัมพันธ์กับรูทของพื้นที่ทำงาน ซึ่งเป็นเอาต์พุตของ bazel info workspace หากเส้นทางที่ระบุว่างเปล่า ให้นำการแทรกก่อนหน้าออก

--invocation_id=<a UUID> ค่าเริ่มต้น: ""

ตัวระบุที่ไม่ซ้ำกันในรูปแบบ UUID สำหรับคำสั่งที่กำลังเรียกใช้ หากระบุอย่างชัดเจน ผู้เรียกใช้ต้องตรวจสอบว่าค่าไม่ซ้ำกัน ระบบจะพิมพ์ UUID ไปยัง stderr, BEP และโปรโตคอลการดำเนินการจากระยะไกล

แท็ก bazel_monitoring, bazel_internal_configuration

--override_repository=<an equals-separated mapping of repository name to path> มีการสะสมการใช้งานหลายครั้ง

ลบล้างที่เก็บด้วยเส้นทางในเครื่องในรูปแบบ <ชื่อที่เก็บ>=<เส้นทาง> หากเส้นทางที่ระบุเป็นเส้นทางสมบูรณ์ ระบบจะใช้เส้นทางดังกล่าวตามที่ระบุ หากเส้นทางที่ระบุเป็นเส้นทางสัมพัทธ์ เส้นทางดังกล่าวจะสัมพันธ์กับไดเรกทอรีการทำงานปัจจุบัน หากเส้นทางที่ระบุเริ่มต้นด้วย "%workspace%" เส้นทางนั้นจะสัมพันธ์กับรูทของพื้นที่ทำงาน ซึ่งเป็นเอาต์พุตของ bazel info workspace หากเส้นทางที่ระบุว่างเปล่า ให้นำการลบล้างก่อนหน้าออก

--[no]progress_in_terminal_title ค่าเริ่มต้น: "false"

แสดงความคืบหน้าของคำสั่งในชื่อเทอร์มินัล มีประโยชน์ในการดูว่า Bazel กำลังทำอะไรอยู่เมื่อมีแท็บเทอร์มินัลหลายแท็บ

--[no]show_progress ค่าเริ่มต้น: "จริง"

แสดงข้อความความคืบหน้าระหว่างการสร้าง

--show_progress_rate_limit=<a double> ค่าเริ่มต้น: "0.2"

จำนวนวินาทีขั้นต่ำระหว่างข้อความความคืบหน้าในเอาต์พุต

--[no]show_timestamps ค่าเริ่มต้น: "false"

รวมการประทับเวลาในข้อความ

--tls_certificate=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเส้นทางไปยังใบรับรอง TLS ที่เชื่อถือได้ในการลงนามใบรับรองเซิร์ฟเวอร์

--tls_client_certificate=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุใบรับรองไคลเอ็นต์ TLS ที่จะใช้ คุณต้องระบุคีย์ไคลเอ็นต์เพื่อเปิดใช้การตรวจสอบสิทธิ์ไคลเอ็นต์ด้วย

--tls_client_key=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคีย์ไคลเอ็นต์ TLS ที่จะใช้ คุณต้องระบุใบรับรองไคลเอ็นต์เพื่อเปิดใช้การตรวจสอบสิทธิ์ไคลเอ็นต์ด้วย

--ui_actions_shown=<an integer> ค่าเริ่มต้น: "8"

จำนวนการดำเนินการพร้อมกันที่แสดงในแถบความคืบหน้าแบบละเอียด โดยแต่ละการดำเนินการจะแสดงในบรรทัดแยกกัน แถบความคืบหน้าจะแสดงอย่างน้อย 1 เสมอ โดยระบบจะแมปตัวเลขทั้งหมดที่น้อยกว่า 1 เป็น 1

แท็ก terminal_output

--[no]watchfs ค่าเริ่มต้น: "false"

ใน Linux/macOS: หากเป็นจริง Bazel จะพยายามใช้บริการตรวจสอบไฟล์ของระบบปฏิบัติการสำหรับการเปลี่ยนแปลงในเครื่องแทนที่จะสแกนทุกไฟล์เพื่อหาการเปลี่ยนแปลง ใน Windows: ปัจจุบัน Flag นี้ไม่มีการดำเนินการใดๆ แต่สามารถเปิดใช้ร่วมกับ --experimental_windows_watchfs ได้ ในระบบปฏิบัติการใดก็ตาม: ระบบจะไม่กำหนดลักษณะการทำงานหากพื้นที่ทำงานอยู่ในระบบไฟล์เครือข่ายและมีการแก้ไขไฟล์ในเครื่องระยะไกล

ตัวเลือก Aquery

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและการตีความหมายของคำค้นหา
--aspect_deps=<off, conservative or precise> ค่าเริ่มต้น: "ระมัดระวัง"

วิธีแก้ไขการขึ้นต่อกันของแง่มุมเมื่อรูปแบบเอาต์พุตเป็นหนึ่งใน {xml,proto,record} "off" หมายความว่าจะไม่มีการแก้ไขการขึ้นต่อกันของแง่มุม "conservative" (ค่าเริ่มต้น) หมายความว่าจะมีการเพิ่มการขึ้นต่อกันของแง่มุมที่ประกาศทั้งหมดไม่ว่าแง่มุมเหล่านั้นจะได้รับคลาสกฎของการขึ้นต่อกันโดยตรงหรือไม่ก็ตาม "precise" หมายความว่าจะมีการเพิ่มเฉพาะแง่มุมที่อาจใช้งานได้เมื่อพิจารณาจากคลาสกฎของการขึ้นต่อกันโดยตรง โปรดทราบว่าโหมดที่แม่นยำต้องโหลดแพ็กเกจอื่นๆ เพื่อประเมินเป้าหมายเดียว จึงทำให้ช้ากว่าโหมดอื่นๆ โปรดทราบว่าแม้ในโหมดที่แม่นยำก็ยังไม่แม่นยำโดยสมบูรณ์ เนื่องจากระบบจะตัดสินใจว่าจะคำนวณแง่มุมใดในระยะการวิเคราะห์ ซึ่งไม่ได้ทำงานระหว่าง "bazel query"

แท็ก build_file_semantics

--[no]consistent_labels ค่าเริ่มต้น: "false"

หากเปิดใช้ คำสั่งค้นหาทุกคำสั่งจะปล่อยป้ายกำกับออกมาเสมือนว่าใช้ฟังก์ชัน <code>str</code> ของ Starlark กับอินสแตนซ์ <code>Label</code> ซึ่งจะเป็นประโยชน์สำหรับเครื่องมือที่ต้องจับคู่เอาต์พุตของคำสั่งการค้นหาและ/หรือป้ายกำกับต่างๆ ที่กฎปล่อยออกมา หากไม่ได้เปิดใช้ ตัวจัดรูปแบบเอาต์พุตจะสามารถปล่อยชื่อที่เก็บที่ชัดเจน (เทียบกับที่เก็บหลัก) แทนเพื่อให้เอาต์พุตอ่านง่ายขึ้น

แท็ก terminal_output

--[no]experimental_explicit_aspects ค่าเริ่มต้น: "false"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]graph:factored ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะส่งกราฟที่ "แยกตัวประกอบ" กล่าวคือ ระบบจะผสานโหนดที่เทียบเท่ากันในเชิงโทโพโลยีเข้าด้วยกันและต่อป้ายกำกับของโหนดเหล่านั้น ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--graph:node_limit=<an integer> ค่าเริ่มต้น: "512"

ความยาวสูงสุดของสตริงป้ายกำกับสำหรับโหนดกราฟในเอาต์พุต ระบบจะตัดป้ายกำกับที่ยาวเกินไป โดย -1 หมายถึงไม่มีการตัด ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--[no]implicit_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมทรัพยากร Dependency โดยนัยไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน การขึ้นต่อกันโดยนัยคือการขึ้นต่อกันที่ไม่ได้ระบุอย่างชัดเจนในไฟล์ BUILD แต่ Bazel เพิ่มให้ สำหรับ cquery ตัวเลือกนี้จะควบคุมการกรอง Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--[no]include_artifacts ค่าเริ่มต้น: "จริง"

รวมชื่อของอินพุตและเอาต์พุตของการดำเนินการในเอาต์พุต (อาจมีขนาดใหญ่)

แท็ก terminal_output

--[no]include_aspects ค่าเริ่มต้น: "จริง"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]include_commandline ค่าเริ่มต้น: "จริง"

รวมเนื้อหาของบรรทัดคำสั่งการดำเนินการในเอาต์พุต (อาจมีขนาดใหญ่)

แท็ก terminal_output

--[no]include_file_write_contents ค่าเริ่มต้น: "false"

รวมเนื้อหาของไฟล์สำหรับการดำเนินการ FileWrite, SourceSymlinkManifest และ RepoMappingManifest (อาจมีขนาดใหญ่)

แท็ก terminal_output

--[no]include_param_files ค่าเริ่มต้น: "false"

รวมเนื้อหาของไฟล์พารามิเตอร์ที่ใช้ในคำสั่ง (อาจมีขนาดใหญ่) หมายเหตุ: การเปิดใช้ฟีเจอร์นี้จะเปิดใช้แฟล็ก --include_commandline โดยอัตโนมัติ

แท็ก terminal_output

--[no]include_pruned_inputs ค่าเริ่มต้น: "จริง"

รวมถึงอินพุตการดำเนินการที่ได้รับการตัดออกระหว่างการดำเนินการ มีผลเฉพาะการดำเนินการที่ค้นพบอินพุตและดำเนินการในการเรียกใช้ก่อนหน้า จะมีผลก็ต่อเมื่อตั้งค่า --include_artifacts ด้วย

แท็ก terminal_output

--[no]incompatible_package_group_includes_double_slash ค่าเริ่มต้น: "จริง"

หากเปิดใช้ เมื่อส่งออกแอตทริบิวต์ packages ของ package_group ระบบจะไม่ละเว้น // ที่นำหน้า

แท็ก terminal_output, incompatible_change

--[no]infer_universe_scope ค่าเริ่มต้น: "false"

หากตั้งค่าและไม่ได้ตั้งค่า --universe_scope ระบบจะอนุมานค่าของ --universe_scope เป็นรายการรูปแบบเป้าหมายที่ไม่ซ้ำกันในนิพจน์การค้นหา โปรดทราบว่าค่า --universe_scope ที่อนุมานสำหรับนิพจน์การค้นหาที่ใช้ฟังก์ชันระดับจักรวาล (เช่น allrdeps) อาจไม่ใช่สิ่งที่คุณต้องการ ดังนั้นคุณควรใช้ตัวเลือกนี้เฉพาะในกรณีที่คุณทราบว่ากำลังทำอะไรอยู่ ดูรายละเอียดและตัวอย่างได้ที่ https://bazel.build/reference/query#sky-query หากตั้งค่า --universe_scope ระบบจะไม่สนใจค่าของตัวเลือกนี้ หมายเหตุ: ตัวเลือกนี้ใช้กับ query เท่านั้น (ไม่ใช่ cquery)

แท็ก loading_and_analysis

--[no]line_terminator_null ค่าเริ่มต้น: "false"

ไม่ว่าจะสิ้นสุดแต่ละรูปแบบด้วย \0 แทนการขึ้นบรรทัดใหม่หรือไม่

แท็ก terminal_output

--[no]nodep_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมการขึ้นต่อกันจากแอตทริบิวต์ "nodep" ไว้ในกราฟการขึ้นต่อกันที่การค้นหาทำงาน ตัวอย่างทั่วไปของแอตทริบิวต์ "nodep" คือ "visibility" เรียกใช้และแยกวิเคราะห์เอาต์พุตของ info build-language เพื่อดูแอตทริบิวต์ "nodep" ทั้งหมดในภาษาบิลด์

แท็ก build_file_semantics

--output=<a string> ค่าเริ่มต้น: "ข้อความ"

รูปแบบที่ควรพิมพ์ผลลัพธ์ของ aquery ค่าที่อนุญาตสำหรับ aquery ได้แก่ text, textproto, proto, streamed_proto, jsonproto

แท็ก terminal_output

--output_file=<a string> ค่าเริ่มต้น: ""

เมื่อระบุ ผลลัพธ์การค้นหาจะเขียนลงในไฟล์นี้โดยตรง และจะไม่มีการพิมพ์อะไรลงในสตรีมเอาต์พุตมาตรฐาน (stdout) ของ Bazel ในการทดสอบเปรียบเทียบ โดยทั่วไปแล้ววิธีนี้จะเร็วกว่า <code>bazel query &gt; file</code>

แท็ก terminal_output

--[no]proto:default_values ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมแอตทริบิวต์ที่ไม่ได้ระบุค่าอย่างชัดเจนในไฟล์ BUILD มิฉะนั้นจะละเว้น ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:definition_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง proto definition_stack ซึ่งจะบันทึกสแต็กการเรียก Starlark สำหรับอินสแตนซ์ของกฎแต่ละรายการ ณ เวลาที่กำหนดคลาสของกฎ

แท็ก terminal_output

--[no]proto:flatten_selects ค่าเริ่มต้น: "จริง"

หากเปิดใช้ แอตทริบิวต์ที่กำหนดค่าได้ซึ่งสร้างโดย select() จะได้รับการปรับให้แบน สำหรับประเภทรายการ การแสดงแบบ Flatten คือรายการที่มีค่าแต่ละค่าของแผนที่ที่เลือกเพียงครั้งเดียว ระบบจะทำให้ประเภทสเกลาร์แบนเป็นค่าว่าง

แท็ก build_file_semantics

--[no]proto:include_attribute_source_aspects ค่าเริ่มต้น: "false"

ป้อนข้อมูลลงในช่องโปรโต source_aspect_name ของแอตทริบิวต์แต่ละรายการด้วยแง่มุมของแหล่งที่มาที่แอตทริบิวต์มาจาก (สตริงว่างหากไม่ได้มาจากแง่มุมของแหล่งที่มา)

แท็ก terminal_output

--[no]proto:include_starlark_rule_env ค่าเริ่มต้น: "จริง"

ใช้สภาพแวดล้อม Starlark ในค่าของแอตทริบิวต์ $internal_attr_hash ที่สร้างขึ้น ซึ่งจะช่วยให้มั่นใจได้ว่าคำจำกัดความของกฎ Starlark (และการนำเข้าแบบทรานซิทีฟ) เป็นส่วนหนึ่งของตัวระบุนี้

แท็ก terminal_output

--[no]proto:include_synthetic_attribute_hash ค่าเริ่มต้น: "false"

เลือกว่าจะคำนวณและป้อนแอตทริบิวต์ $internal_attr_hash หรือไม่

แท็ก terminal_output

--[no]proto:instantiation_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในสแต็กการเรียกอินสแตนซ์ของแต่ละกฎ โปรดทราบว่าต้องมีสแต็ก

แท็ก terminal_output

--[no]proto:locations ค่าเริ่มต้น: "จริง"

เลือกว่าจะแสดงข้อมูลตำแหน่งในเอาต์พุต Proto หรือไม่

แท็ก terminal_output

--proto:output_rule_attrs=<comma-separated list of options> ค่าเริ่มต้น: "all"

รายการแอตทริบิวต์ที่คั่นด้วยจุลภาคที่จะรวมไว้ในเอาต์พุต ค่าเริ่มต้นคือแอตทริบิวต์ทั้งหมด ตั้งค่าเป็นสตริงว่างเปล่าเพื่อไม่ให้แสดงแอตทริบิวต์ใดๆ ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:rule_classes ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง rule_class_key ของแต่ละกฎ และสำหรับกฎแรกที่มี rule_class_key ที่ระบุ ให้ป้อนข้อมูลในช่อง rule_class_info proto ด้วย ฟิลด์ rule_class_key จะระบุคลาสกฎที่ไม่ซ้ำกัน และฟิลด์ rule_class_info คือคำจำกัดความ API ของคลาสกฎในรูปแบบ Stardoc

แท็ก terminal_output

--[no]proto:rule_inputs_and_outputs ค่าเริ่มต้น: "จริง"

จะป้อนข้อมูลในช่อง rule_input และ rule_output หรือไม่

แท็ก terminal_output

--query_file=<a string> ค่าเริ่มต้น: ""

หากตั้งค่าไว้ การค้นหาจะอ่านการค้นหาจากไฟล์ที่ตั้งชื่อไว้ที่นี่ แทนที่จะอ่านจากบรรทัดคำสั่ง การระบุไฟล์ที่นี่รวมถึงการค้นหาในบรรทัดคำสั่งถือเป็นข้อผิดพลาด

แท็ก changes_inputs

--[no]relative_locations ค่าเริ่มต้น: "false"

หากเป็นจริง ตำแหน่งของไฟล์ BUILD ในเอาต์พุต XML และ Proto จะเป็นแบบสัมพัทธ์ โดยค่าเริ่มต้น เอาต์พุตตำแหน่งจะเป็นเส้นทางที่สมบูรณ์และจะไม่สอดคล้องกันในเครื่องต่างๆ คุณสามารถตั้งค่าตัวเลือกนี้เป็น "จริง" เพื่อให้ได้ผลลัพธ์ที่สอดคล้องกันในเครื่องต่างๆ

แท็ก terminal_output

--[no]skyframe_state ค่าเริ่มต้น: "false"

โดยไม่ต้องทำการวิเคราะห์เพิ่มเติม ให้ทิ้ง Action Graph ปัจจุบันจาก Skyframe หมายเหตุ: ปัจจุบันยังไม่รองรับการระบุเป้าหมายด้วย --skyframe_state โดยแฟล็กนี้ใช้ได้กับ --output=proto หรือ --output=textproto เท่านั้น

แท็ก terminal_output

--[no]tool_deps ค่าเริ่มต้น: "จริง"

การค้นหา: หากปิดใช้ ระบบจะไม่รวมทรัพยากร Dependency ใน "การกำหนดค่า exec" ไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน ขอบการขึ้นต่อกันของ "การกำหนดค่า exec" เช่น ขอบจากกฎ "proto_library" ไปยังคอมไพเลอร์โปรโตคอล มักจะชี้ไปยังเครื่องมือที่เรียกใช้ในระหว่างการบิลด์แทนที่จะเป็นส่วนหนึ่งของโปรแกรม "เป้าหมาย" เดียวกัน Cquery: หากปิดใช้ จะกรองเป้าหมายที่กำหนดค่าทั้งหมดซึ่งข้ามการเปลี่ยนการดำเนินการจากเป้าหมายระดับบนสุดที่ค้นพบเป้าหมายที่กำหนดค่านี้ ซึ่งหมายความว่าหากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่าเป้าหมาย ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่าซึ่งอยู่ในกำหนดค่าเป้าหมายด้วย หากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่า exec ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่า exec ตัวเลือกนี้จะไม่ยกเว้น Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--universe_scope=<comma-separated list of options> ค่าเริ่มต้น: ""

ชุดรูปแบบเป้าหมายที่คั่นด้วยคอมมา (การบวกและการลบ) ระบบอาจเรียกใช้การค้นหาในจักรวาลที่กำหนดโดยการปิดทรานซิทีฟของเป้าหมายที่ระบุ ตัวเลือกนี้ใช้สำหรับคำสั่งการค้นหาและ cquery สำหรับ cquery อินพุตของตัวเลือกนี้คือเป้าหมายที่สร้างคำตอบทั้งหมดขึ้นมา ดังนั้นตัวเลือกนี้อาจส่งผลต่อการกำหนดค่าและการเปลี่ยนผ่าน หากไม่ได้ระบุตัวเลือกนี้ ระบบจะถือว่าเป้าหมายระดับบนสุดคือเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหา หมายเหตุ: สำหรับ cquery การไม่ระบุตัวเลือกนี้อาจทำให้บิลด์หยุดทำงานหากเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหาไม่สามารถสร้างได้ด้วยตัวเลือกที่ระดับบนสุด

แท็ก loading_and_analysis

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--[no]experimental_persistent_aar_extractor ค่าเริ่มต้น: "false"

เปิดใช้เครื่องมือแยก AAR แบบถาวรโดยใช้ Worker

แท็ก execution, experimental

--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_split_coverage_postprocessing ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะเรียกใช้การประมวลผลภายหลังของ Coverage สำหรับการทดสอบในกระบวนการใหม่

แท็ก execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--persistent_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android อย่างต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

แท็ก host_machine_resource_optimizations, execution

--persistent_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android แบบหลายรายการที่ต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบมัลติเพล็กซ์ถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_tools

เปิดใช้เครื่องมือ Android แบบถาวรและแบบมัลติเพล็กซ์ (dexing, desugaring, การประมวลผลทรัพยากร)

ขยายเป็น
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--android_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์เป้าหมายของ Android

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_manifest_merger=<legacy, android or force_android> ค่าเริ่มต้น: "android"

เลือกการผสานไฟล์ Manifest ที่จะใช้สำหรับกฎ android_binary Flag เพื่อช่วยในการเปลี่ยนไปใช้เครื่องมือผสานรวมไฟล์ Manifest ของ Android จากเครื่องมือผสานรวมเดิม

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_platforms=<a build target label> ค่าเริ่มต้น: ""

ตั้งค่าแพลตฟอร์มที่เป้าหมาย android_binary ใช้ หากระบุหลายแพลตฟอร์ม ไบนารีจะเป็น APK แบบ Fat ซึ่งมีไบนารีเนทีฟสำหรับแต่ละแพลตฟอร์มเป้าหมายที่ระบุ

แท็ก changes_inputs, loading_and_analysis, loses_incremental_state

--cc_output_directory_tag=<a string> ค่าเริ่มต้น: ""

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก affects_outputs

--compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์ C++ ที่จะใช้คอมไพล์เป้าหมาย

แท็ก loading_and_analysis, execution

--coverage_output_generator=<a build target label> default: "@bazel_tools//tools/test:lcov_merger"

ตำแหน่งของไบนารีที่ใช้ในการประมวลผลรายงานความครอบคลุมดิบ ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:lcov_merger"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

ตำแหน่งของไบนารีที่ใช้สร้างรายงานความครอบคลุม ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:coverage_report_generator"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

ตำแหน่งของไฟล์สนับสนุนที่จำเป็นในอินพุตของการดำเนินการทดสอบทุกครั้งที่รวบรวมความครอบคลุมของโค้ด ค่าเริ่มต้นคือ "//tools/test:coverage_support"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--custom_malloc=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุการติดตั้งใช้งาน malloc ที่กำหนดเอง การตั้งค่านี้จะลบล้างแอตทริบิวต์ malloc ในกฎการสร้าง

แท็ก changes_inputs, affects_outputs

--[no]experimental_include_xcode_execution_requirements ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode:{version}" ลงในการดำเนินการ Xcode ทุกรายการ หากเวอร์ชัน Xcode มีป้ายกำกับที่มีขีดกลาง ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode-label:{version_label}" ด้วย

แท็ก loses_incremental_state, loading_and_analysis, execution, experimental

--[no]experimental_prefer_mutual_xcode ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้ Xcode เวอร์ชันล่าสุดที่พร้อมใช้งานทั้งในเครื่องและจากระยะไกล หากเป็นเท็จ หรือหากไม่มีเวอร์ชันที่ใช้ร่วมกันได้ ให้ใช้ Xcode เวอร์ชันในเครื่องที่เลือกผ่าน xcode-select

แท็ก loses_incremental_state, experimental

--extra_execution_platforms=<comma-separated list of options> ค่าเริ่มต้น: ""

แพลตฟอร์มที่พร้อมใช้งานเป็นแพลตฟอร์มการดำเนินการเพื่อเรียกใช้การดำเนินการ คุณระบุแพลตฟอร์มได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณาแพลตฟอร์มเหล่านี้ก่อนแพลตฟอร์มที่ประกาศในไฟล์ WORKSPACE โดย register_execution_platforms() คุณตั้งค่าตัวเลือกนี้ได้เพียงครั้งเดียวเท่านั้น และอินสแตนซ์ในภายหลังจะลบล้างการตั้งค่าแฟล็กก่อนหน้า

แท็ก execution

--extra_toolchains=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

กฎ Toolchain ที่ควรพิจารณาในระหว่างการแก้ปัญหา Toolchain คุณระบุ Toolchain ได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณา Toolchain เหล่านี้ก่อน Toolchain ที่ประกาศไว้ในไฟล์ WORKSPACE โดย register_toolchains()

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

ป้ายกำกับสำหรับไลบรารี libc ที่เช็คอินแล้ว ค่าเริ่มต้นจะเลือกโดยเครื่องมือ Crosstool Toolchain และคุณแทบจะไม่ต้องลบล้างค่านี้เลย

แท็ก action_command_lines, affects_outputs

--host_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

แฟล็กที่ไม่มีการดำเนินการ จะนำออกในการเปิดตัวรุ่นต่อๆ ไป

แท็ก loading_and_analysis, execution

--host_grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุ การตั้งค่านี้จะลบล้างไดเรกทอรีระดับบนสุดของ libc (--grte_top) สำหรับการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายระบบโฮสต์

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

--[no]incompatible_builtin_objc_strip_action ค่าเริ่มต้น: "จริง"

จะปล่อยการดำเนินการ Strip เป็นส่วนหนึ่งของการลิงก์ objc หรือไม่

แท็ก action_command_lines, incompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่เปิดใช้ฟีเจอร์ "โฮสต์" และ "ไม่ใช่โฮสต์" ในเครื่องมือ C++ (ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/7407)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enable_apple_toolchain_resolution ค่าเริ่มต้น: "false"

ใช้การแก้ปัญหา Toolchain เพื่อเลือก Apple SDK สำหรับกฎ Apple (Starlark และเนทีฟ)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_remove_legacy_whole_archive ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่ลิงก์ทรัพยากร Dependency ของไลบรารีเป็นทั้งอาร์ไคฟ์โดยค่าเริ่มต้น (ดูวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/7362)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_strip_executable_safely ค่าเริ่มต้น: "false"

หากเป็นจริง การลบข้อมูลการดำเนินการสำหรับไฟล์ที่เรียกใช้งานได้จะใช้แฟล็ก -x ซึ่งจะไม่ทำให้การแก้ปัญหาเกี่ยวกับสัญลักษณ์แบบไดนามิกหยุดทำงาน

แท็ก action_command_lines, incompatible_change

--[no]interface_shared_objects ค่าเริ่มต้น: "จริง"

ใช้ออบเจ็กต์ที่แชร์ของอินเทอร์เฟซหากชุดเครื่องมือรองรับ ปัจจุบัน Toolchain ELF ทั้งหมดรองรับการตั้งค่านี้

แท็ก loading_and_analysis, affects_outputs, affects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ iOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน iOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ iOS จาก "xcode_version"

แท็ก loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ macOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน macOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ macOS จาก "xcode_version"

แท็ก loses_incremental_state

--minimum_os_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันระบบปฏิบัติการขั้นต่ำที่การคอมไพล์ของคุณกำหนดเป้าหมาย

แท็ก loading_and_analysis, affects_outputs

--platform_mappings=<a main workspace-relative path> ค่าเริ่มต้น: ""

ตำแหน่งของไฟล์การแมปที่อธิบายว่าควรใช้แพลตฟอร์มใดหากไม่ได้ตั้งค่า หรือควรตั้งค่า Flag ใดเมื่อมีแพลตฟอร์มอยู่แล้ว ต้องสัมพันธ์กับรูทของพื้นที่ทำงานหลัก ค่าเริ่มต้นคือ "platform_mappings" (ไฟล์ที่อยู่ใต้รูทของพื้นที่ทำงานโดยตรง)

แท็ก affects_outputs, changes_inputs, loading_and_analysis, non_configurable

--platforms=<a build target label> ค่าเริ่มต้น: ""

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายแพลตฟอร์มเป้าหมายสำหรับคำสั่งปัจจุบัน

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--python_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ของตัวแปล Python ที่เรียกใช้เพื่อเรียกใช้เป้าหมาย Python ในแพลตฟอร์มเป้าหมาย เลิกใช้งานแล้ว ปิดใช้โดย --incompatible_use_python_toolchains

แท็ก loading_and_analysis, affects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ tvOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน tvOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ tvOS จาก "xcode_version"

แท็ก loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition ค่าเริ่มต้น: "false"

ทำให้ apple_crosstool_transition กลับไปใช้ค่าของแฟล็ก --platforms แทน --cpu แบบเดิมเมื่อจำเป็น

แท็ก loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ watchOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน watchOS หากไม่ได้ระบุ ให้ใช้ SDK เวอร์ชันเริ่มต้นของ watchOS จาก "xcode_version"

แท็ก loses_incremental_state

--xcode_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ จะใช้ Xcode เวอร์ชันที่ระบุสำหรับการดำเนินการบิลด์ที่เกี่ยวข้อง หากไม่ได้ระบุ ระบบจะใช้ Xcode เวอร์ชันเริ่มต้นของตัวดำเนินการ

แท็ก loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ป้ายกำกับของกฎ xcode_config ที่จะใช้ในการเลือกเวอร์ชัน Xcode ในการกำหนดค่าบิลด์

แท็ก loses_incremental_state, loading_and_analysis

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]apple_generate_dsym ค่าเริ่มต้น: "false"

จะสร้างไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่อง (.dSYM) หรือไม่

แท็ก affects_outputs, action_command_lines

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]build_test_dwp ค่าเริ่มต้น: "false"

หากเปิดใช้ เมื่อสร้างการทดสอบ C++ แบบคงที่และใช้ฟิชชัน ระบบจะสร้างไฟล์ .dwp สำหรับไบนารีการทดสอบโดยอัตโนมัติด้วย

แท็ก loading_and_analysis, affects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.h"

ตั้งค่าคำต่อท้ายของไฟล์ส่วนหัวที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.cc"

ตั้งค่าคำต่อท้ายของไฟล์ต้นฉบับที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info ค่าเริ่มต้น: "false"

เรียกใช้การดำเนินการเพิ่มเติมสำหรับ API Java เวอร์ชันอื่นใน proto_library

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_save_feature_state ค่าเริ่มต้น: "false"

บันทึกสถานะของฟีเจอร์ที่เปิดใช้และที่ขอเป็นเอาต์พุตของการคอมไพล์

แท็ก affects_outputs, experimental

--fission=<a set of compilation modes> ค่าเริ่มต้น: "no"

ระบุโหมดการคอมไพล์ที่ใช้ฟิชชันสำหรับการคอมไพล์และการลิงก์ C++ อาจเป็นชุดค่าผสมใดก็ได้ของ {'fastbuild', 'dbg', 'opt'} หรือค่าพิเศษ 'yes' เพื่อเปิดใช้ทุกโหมด และ 'no' เพื่อปิดใช้ทุกโหมด

แท็ก loading_and_analysis, action_command_lines, affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

--[no]objc_generate_linkmap ค่าเริ่มต้น: "false"

ระบุว่าจะสร้างไฟล์ Linkmap หรือไม่

แท็ก affects_outputs

--[no]save_temps ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ระบบจะบันทึกเอาต์พุตชั่วคราวจาก gcc ซึ่งรวมถึงไฟล์ .s (โค้ดแอสเซมเบลอร์), ไฟล์ .i (C ที่ประมวลผลล่วงหน้า) และไฟล์ .ii (C++ ที่ประมวลผลล่วงหน้า)

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]android_databinding_use_androidx ค่าเริ่มต้น: "จริง"

สร้างไฟล์ Data Binding ที่เข้ากันได้กับ AndroidX ซึ่งใช้ได้กับ Data Binding v2 เท่านั้น แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]android_databinding_use_v3_4_args ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android กับอาร์กิวเมนต์ 3.4.0 แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--android_dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "ปิด"

กำหนดว่าจะลิงก์ C++ deps ของกฎ Android แบบไดนามิกหรือไม่เมื่อ cc_binary ไม่ได้สร้างไลบรารีที่ใช้ร่วมกันอย่างชัดเจน "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก affects_outputs, loading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> ค่าเริ่มต้น: "ตามตัวอักษร"

กำหนดลำดับของไฟล์ Manifest ที่ส่งผ่านไปยังโปรแกรมผสานไฟล์ Manifest สำหรับไบนารีของ Android ALPHABETICAL หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่เกี่ยวข้องกับ execroot ALPHABETICAL_BY_CONFIGURATION หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่สัมพันธ์กับไดเรกทอรีการกำหนดค่าภายในไดเรกทอรีเอาต์พุต DEPENDENCY หมายความว่าไฟล์ Manifest จะเรียงตามลำดับโดยไฟล์ Manifest ของแต่ละไลบรารีจะอยู่ก่อนไฟล์ Manifest ของการอ้างอิง

แท็ก action_command_lines, execution

--[no]android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis

--[no]build_python_zip ค่าเริ่มต้น: "auto"

สร้างไฟล์ ZIP ที่ปฏิบัติการได้ของ Python โดยเปิดใน Windows และปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--catalyst_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple Catalyst

แท็ก loses_incremental_state, loading_and_analysis

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C

แท็ก action_command_lines, affects_outputs

--copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc

แท็ก action_command_lines, affects_outputs

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--cs_fdo_absolute_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ CSFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อเส้นทางสัมบูรณ์ของไฟล์ ZIP ที่มีไฟล์โปรไฟล์ ไฟล์ LLVM โปรไฟล์แบบดิบ หรือไฟล์ LLVM โปรไฟล์ที่จัดทำดัชนี

แท็ก affects_outputs

--cs_fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO ที่คำนึงถึงบริบทเป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--cs_fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

cs_fdo_profile ที่แสดงโปรไฟล์ที่คำนึงถึงบริบทซึ่งจะใช้ในการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C++

แท็ก action_command_lines, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "default"

กำหนดว่าจะลิงก์ไบนารี C++ แบบไดนามิกหรือไม่ "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก loading_and_analysis, affects_outputs

--[no]enable_propeller_optimize_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ Propeller Optimize จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_remaining_fdo_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ FDO จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_android_compress_java_resources ค่าเริ่มต้น: "false"

บีบอัดทรัพยากร Java ใน APK

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_databinding_v2 ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_rewrite_dexes_with_rex ค่าเริ่มต้น: "false"

ใช้เครื่องมือ rex เพื่อเขียนไฟล์ dex ใหม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_objc_fastbuild_options=<comma-separated list of options> ค่าเริ่มต้น: "-O0,-DDEBUG=1"

ใช้สตริงเหล่านี้เป็นตัวเลือกคอมไพเลอร์ objc fastbuild

แท็ก action_command_lines

--[no]experimental_omitfp ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้ libunwind สำหรับการคลายสแต็ก และคอมไพล์ด้วย -fomit-frame-pointer และ -fasynchronous-unwind-tables

แท็ก action_command_lines, affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_py_binaries_include_label ค่าเริ่มต้น: "false"

เป้าหมาย py_binary จะมีป้ายกำกับของตัวเองแม้ว่าจะปิดใช้การประทับเวลาไว้ก็ตาม

แท็ก affects_outputs, experimental

--[no]experimental_use_llvm_covmap ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลแผนที่ความครอบคลุมของ llvm-cov แทน gcov เมื่อเปิดใช้ collect_code_coverage

แท็ก changes_inputs, affects_outputs, loading_and_analysis, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO เป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--fdo_optimize=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ FDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อไฟล์ ZIP ที่มีโครงสร้างไฟล์ .gcda, ไฟล์ AFDO ที่มีโปรไฟล์อัตโนมัติ หรือไฟล์โปรไฟล์ LLVM นอกจากนี้ แฟล็กนี้ยังยอมรับไฟล์ที่ระบุเป็นป้ายกำกับ (เช่น //foo/bar:file.afdo - คุณอาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้อง) และป้ายกำกับที่ชี้ไปยังเป้าหมาย fdo_profile กฎ fdo_profile จะมีผลแทนฟีเจอร์นี้

แท็ก affects_outputs

--fdo_prefetch_hints=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้คำแนะนำการดึงข้อมูลล่วงหน้าของแคช

แท็ก affects_outputs

--fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

fdo_profile ที่แสดงโปรไฟล์ที่จะใช้สำหรับการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--[no]force_pic ค่าเริ่มต้น: "false"

หากเปิดใช้ การคอมไพล์ C++ ทั้งหมดจะสร้างโค้ดที่ไม่ขึ้นกับตำแหน่ง ("-fPIC") ลิงก์จะเลือกใช้ไลบรารีที่สร้างไว้ล่วงหน้าแบบ PIC มากกว่าไลบรารีที่ไม่ใช่ PIC และลิงก์จะสร้างไฟล์ปฏิบัติการที่ไม่ขึ้นกับตำแหน่ง ("-pie")

แท็ก loading_and_analysis, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C เมื่อคอมไพล์ไฟล์ต้นฉบับ C (แต่ไม่ใช่ C++) ในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C++ สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--host_linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Linker เมื่อลิงก์เครื่องมือในการกำหนดค่า Exec

แท็ก action_command_lines, affects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่ใช้ร่วมกันได้สำหรับเป้าหมายโฮสต์ หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังคอมไพเลอร์ C/C++ อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ในการกำหนดค่า exec ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก action_command_lines, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

iOS เวอร์ชันขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "ios_sdk_version"

แท็ก loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาเพื่อสร้าง ios_application ผลลัพธ์คือไบนารีแบบสากลที่มีสถาปัตยกรรมที่ระบุทั้งหมด

แท็ก loses_incremental_state, loading_and_analysis

--[no]legacy_whole_archive ค่าเริ่มต้น: "จริง"

เลิกใช้งานแล้ว ถูกแทนที่ด้วย --incompatible_remove_legacy_whole_archive (ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7362) เมื่อเปิดอยู่ ให้ใช้ --whole-archive สำหรับกฎ cc_binary ที่มี linkshared=True และ linkstatic=True หรือ '-static' ใน linkopts การตั้งค่านี้ใช้เพื่อให้มีความเข้ากันได้แบบย้อนหลังเท่านั้น ทางเลือกที่ดีกว่าคือการใช้ alwayslink=1 ในกรณีที่จำเป็น

แท็ก action_command_lines, affects_outputs, deprecated

--linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อลิงก์

แท็ก action_command_lines, affects_outputs

--ltobackendopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนแบ็กเอนด์ของ LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--ltoindexopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนการจัดทำดัชนี LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--macos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple macOS

แท็ก loses_incremental_state, loading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่เข้ากันได้สำหรับเป้าหมาย หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก loses_incremental_state

--memprof_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้โปรไฟล์ memprof

แท็ก affects_outputs

--[no]objc_debug_with_GLIBCXX ค่าเริ่มต้น: "false"

หากตั้งค่าไว้และตั้งค่าโหมดการคอมไพล์เป็น "dbg" ให้กำหนด GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC และ GLIBCPP_CONCEPT_CHECKS

แท็ก action_command_lines

--[no]objc_enable_binary_stripping ค่าเริ่มต้น: "false"

ว่าจะลบสัญลักษณ์และโค้ดที่ไม่ได้ใช้ในไบนารีที่ลิงก์หรือไม่ ระบบจะทำการลบไบนารีออกหากมีการระบุทั้งแฟล็กนี้และ --compilation_mode=opt

แท็ก action_command_lines

--objccopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ Objective-C/C++

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมเพื่อส่งไปยัง gcc อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังแบ็กเอนด์ LTO อย่างเลือก (ภายใต้ --features=thin_lto) เมื่อคอมไพล์ออบเจ็กต์แบ็กเอนด์บางรายการ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดย regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่งของแบ็กเอนด์ LTO ของไฟล์.o ทั้งหมดใน //foo/ ยกเว้น bar.o

แท็ก action_command_lines, affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--propeller_optimize=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ Propeller เพื่อเพิ่มประสิทธิภาพเป้าหมายการบิลด์ โปรไฟล์ Propeller ต้องประกอบด้วยไฟล์อย่างน้อย 1 ใน 2 ไฟล์ ได้แก่ โปรไฟล์ cc และโปรไฟล์ ld แฟล็กนี้ยอมรับป้ายกำกับการสร้างซึ่งต้องอ้างอิงไฟล์อินพุตโปรไฟล์ Propeller เช่น ไฟล์ BUILD ที่กำหนดป้ายกำกับใน a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",) อาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้องเพื่อให้ Bazel มองเห็นไฟล์เหล่านี้ ต้องใช้ตัวเลือกในรูปแบบ --propeller_optimize=//a/b:propeller_profile

แท็ก action_command_lines, affects_outputs

--propeller_optimize_absolute_cc_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางสัมบูรณ์ของไฟล์ cc_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางแบบสัมบูรณ์ของไฟล์ ld_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]share_native_deps ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะแชร์ไลบรารีที่มาพร้อมเครื่องซึ่งมีฟังก์ชันการทำงานเหมือนกันในกลุ่มเป้าหมายต่างๆ

แท็ก loading_and_analysis, affects_outputs

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

--strip=<always, sometimes or never> ค่าเริ่มต้น: "บางครั้ง"

ระบุว่าจะลบไบนารีและไลบรารีที่ใช้ร่วมกันหรือไม่ (ใช้ "-Wl,--strip-debug") ค่าเริ่มต้นของ "บางครั้ง" หมายถึงการลบออกหาก --compilation_mode=fastbuild

แท็ก affects_outputs

--stripopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง strip เมื่อสร้างไบนารี "<name>.stripped"

แท็ก action_command_lines, affects_outputs

--tvos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple tvOS

แท็ก loses_incremental_state, loading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน tvOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "tvos_sdk_version"

แท็ก loses_incremental_state

--visionos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple visionOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple watchOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน watchOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ระบุ ให้ใช้ "watchos_sdk_version"

แท็ก loses_incremental_state

--xbinary_fdo=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ XbinaryFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อของโปรไฟล์ไบนารีข้ามเริ่มต้น เมื่อใช้ตัวเลือกนี้ร่วมกับ --fdo_instrument/--fdo_optimize/--fdo_profile ตัวเลือกเหล่านั้นจะมีผลเสมอราวกับว่าไม่ได้ระบุ xbinary_fdo

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]desugar_for_android ค่าเริ่มต้น: "จริง"

จะแปลงไบต์โค้ด Java 8 ก่อน dexing หรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]desugar_java8_libs ค่าเริ่มต้น: "false"

จะรวมไลบรารี Java 8 ที่รองรับไว้ในแอปสำหรับอุปกรณ์รุ่นเดิมหรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_check_desugar_deps ค่าเริ่มต้น: "จริง"

เลือกว่าจะตรวจสอบการแยกส่วนที่ถูกต้องในระดับไบนารีของ Android หรือไม่

แท็ก eagerness_to_exit, loading_and_analysis, experimental

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--experimental_one_version_enforcement=<off, warning or error> ค่าเริ่มต้น: "ปิด"

เมื่อเปิดใช้ ให้บังคับว่ากฎ java_binary ต้องมีไฟล์คลาสเวอร์ชันเดียวกันในเส้นทางคลาสได้ไม่เกิน 1 รายการ การบังคับใช้นี้อาจทำให้บิลด์ใช้งานไม่ได้ หรืออาจส่งผลให้เกิดคำเตือนเท่านั้น

แท็ก loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "default"

หากเป็นจริง จะตรวจสอบว่าเป้าหมาย Java ประกาศเป้าหมายทั้งหมดที่ใช้โดยตรงเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_native_android_rules ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะปิดใช้การใช้กฎ Android ดั้งเดิมโดยตรง โปรดใช้กฎ Android ของ Starlark จาก https://github.com/bazelbuild/rules_android

แท็ก eagerness_to_exit, incompatible_change

--[no]incompatible_disable_native_apple_binary_rule ค่าเริ่มต้น: "false"

ไม่มีการดำเนินการใดๆ เก็บไว้ที่นี่เพื่อความเข้ากันได้แบบย้อนหลัง

แท็ก eagerness_to_exit, incompatible_change

--[no]one_version_enforcement_on_java_tests ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้และตั้งค่า experimental_one_version_enforcement เป็นค่าที่ไม่ใช่ NONE ให้บังคับใช้เวอร์ชันเดียวกับเป้าหมาย java_test คุณปิดใช้ Flag นี้ได้เพื่อปรับปรุงประสิทธิภาพการทดสอบแบบเพิ่มขึ้น โดยอาจทำให้พลาดการละเมิดแบบเวอร์ชันเดียวที่อาจเกิดขึ้น

แท็ก loading_and_analysis

--python_native_rules_allowlist=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

รายการที่อนุญาต (เป้าหมาย package_group) ที่จะใช้เมื่อบังคับใช้ --incompatible_python_disallow_native_rules

แท็ก loading_and_analysis

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "error"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายที่ใช้โดยตรงทั้งหมดเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--strict_public_imports=<off, warn, error, strict or default> ค่าเริ่มต้น: "ปิด"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายทั้งหมดที่ใช้ใน "import public" อย่างชัดเจนว่าส่งออกแล้ว

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--[no]strict_system_includes ค่าเริ่มต้น: "false"

หากเป็นจริง คุณจะต้องประกาศส่วนหัวที่พบผ่านเส้นทางของระบบ (-isystem) ด้วย

แท็ก loading_and_analysis, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกที่มีผลต่อเอาต์พุตการลงนามของบิลด์
--apk_signing_method=<v1, v2, v1_v2 or v4> ค่าเริ่มต้น: "v1_v2"

การติดตั้งใช้งานเพื่อใช้ในการรับรอง APK

แท็ก action_command_lines, affects_outputs, loading_and_analysis

--[no]device_debug_entitlements ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้และโหมดการคอมไพล์ไม่ใช่ "opt" แอป objc จะมีสิทธิ์การแก้ไขข้อบกพร่องเมื่อลงนาม

แท็ก changes_inputs

--ios_signing_cert_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อใบรับรองที่จะใช้สำหรับการลงนามใน iOS หากไม่ได้ตั้งค่าไว้ ระบบจะเปลี่ยนกลับไปใช้โปรไฟล์การจัดสรร อาจเป็นค่ากำหนดข้อมูลประจำตัวในพวงกุญแจของใบรับรองหรือ (สตริงย่อย) ของชื่อทั่วไปของใบรับรอง ตามหน้า Man ของ codesign (ข้อมูลประจำตัวในการลงนาม)

แท็ก action_command_lines

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_disallow_sdk_frameworks_attributes ค่าเริ่มต้น: "false"

หากเป็น "จริง" จะไม่อนุญาตแอตทริบิวต์ sdk_frameworks และ weak_sdk_frameworks ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

หากเป็นจริง ให้ตั้งค่าเริ่มต้นเป็นจริงสำหรับแอตทริบิวต์ alwayslink ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_python_disallow_native_rules ค่าเริ่มต้น: "false"

เมื่อเป็นจริง จะเกิดข้อผิดพลาดเมื่อใช้กฎ py_* ในตัว แต่ควรใช้กฎ rule_python แทน ดูข้อมูลเพิ่มเติมและวิธีการย้ายข้อมูลได้ที่ https://github.com/bazelbuild/bazel/issues/17773

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure ค่าเริ่มต้น: "false"

หากเป็นจริง การดำเนินการ dex2oat ที่ล้มเหลวจะทำให้บิลด์หยุดทำงานแทนที่จะเรียกใช้ dex2oat ในระหว่างรันไทม์ของการทดสอบ

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ลบล้างจำนวนทรัพยากรเริ่มต้นสำหรับการทดสอบ รูปแบบที่คาดไว้คือ <resource>=<value> หากระบุตัวเลขบวกตัวเดียวเป็น <value> ระบบจะลบล้างทรัพยากรเริ่มต้นสำหรับขนาดการทดสอบทั้งหมด หากระบุตัวเลข 4 ตัวที่คั่นด้วยคอมมา ตัวเลขเหล่านั้นจะลบล้างจำนวนทรัพยากรสำหรับขนาดการทดสอบเล็ก กลาง ใหญ่ และใหญ่มากตามลำดับ นอกจากนี้ ค่าอาจเป็น HOST_RAM/HOST_CPU ตามด้วย [-|]<float> (เช่น memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4) ก็ได้ ทรัพยากรทดสอบเริ่มต้นที่ระบุโดยแฟล็กนี้จะถูกแทนที่ด้วยทรัพยากรที่ชัดเจนซึ่งระบุไว้ในแท็ก

--[no]experimental_android_use_parallel_dex2oat ค่าเริ่มต้น: "false"

ใช้ dex2oat แบบคู่ขนานเพื่อเพิ่มความเร็ว android_test

แท็ก loading_and_analysis, host_machine_resource_optimizations, experimental

--[no]ios_memleaks ค่าเริ่มต้น: "false"

เปิดใช้การตรวจสอบหน่วยความจำรั่วในเป้าหมาย ios_test

แท็ก action_command_lines

--ios_simulator_device=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

อุปกรณ์ที่จะจำลองเมื่อเรียกใช้แอปพลิเคชัน iOS ในโปรแกรมจำลอง เช่น "iPhone 6" คุณดูรายการอุปกรณ์ได้โดยเรียกใช้ "xcrun simctl list devicetypes" ในเครื่องที่จะเรียกใช้โปรแกรมจำลอง

แท็ก test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันของ iOS ที่จะเรียกใช้ในโปรแกรมจำลองเมื่อเรียกใช้หรือทดสอบ ระบบจะละเว้นพารามิเตอร์นี้สำหรับกฎ ios_test หากมีการระบุอุปกรณ์เป้าหมายในกฎ

แท็ก test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบุจำนวนครั้งที่จะเรียกใช้การทดสอบแต่ละครั้ง หากการพยายามดังกล่าวไม่สำเร็จไม่ว่าด้วยเหตุผลใดก็ตาม ระบบจะถือว่าการทดสอบทั้งหมดไม่สำเร็จ โดยปกติแล้วค่าที่ระบุจะเป็นเพียงจำนวนเต็ม ตัวอย่าง: --runs_per_test=3 จะเรียกใช้การทดสอบทั้งหมด 3 ครั้ง ไวยากรณ์อื่น: regex_filter@runs_per_test โดย runs_per_test หมายถึงค่าจำนวนเต็ม และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ตัวอย่าง: --runs_per_test=//foo/.,-//foo/bar/.@3 จะเรียกใช้การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบที่อยู่ภายใต้ foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ระบบจะทำการทดสอบเพียงครั้งเดียว

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมที่จะแทรกลงในสภาพแวดล้อมของโปรแกรมเรียกใช้การทดสอบ ตัวแปรอาจระบุโดย <code>name</code> ในกรณีนี้ ค่าจะอ่านจากสภาพแวดล้อมไคลเอ็นต์ Bazel หรือโดยคู่ <code>name=value</code> คุณยกเลิกการตั้งค่าตัวแปรที่ตั้งไว้ก่อนหน้านี้ได้ผ่าน <code>=name</code> คุณใช้ตัวเลือกนี้ได้หลายครั้งเพื่อระบุตัวแปรหลายรายการ ใช้โดยคำสั่ง "bazel test" เท่านั้น

แท็ก test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> ค่าเริ่มต้น: "-1"

ลบล้างค่าการหมดเวลาทดสอบเริ่มต้นสำหรับการหมดเวลาทดสอบ (เป็นวินาที) หากระบุค่าจำนวนเต็มบวกค่าเดียว ค่าดังกล่าวจะลบล้างหมวดหมู่ทั้งหมด หากระบุจำนวนเต็ม 4 รายการที่คั่นด้วยคอมมา ระบบจะลบล้างการหมดเวลาสำหรับระยะเวลาสั้น ปานกลาง ยาว และไม่มีกำหนด (ตามลำดับ) ไม่ว่าจะอยู่ในรูปแบบใด ค่า -1 จะบอกให้ Blaze ใช้การหมดเวลาเริ่มต้นสำหรับหมวดหมู่นั้น

--[no]zip_undeclared_test_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเก็บเอาต์พุตการทดสอบที่ไม่ได้ประกาศไว้ในไฟล์ ZIP

แท็ก test_runner

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--[no]experimental_filter_library_jar_with_program_jar ค่าเริ่มต้น: "false"

กรอง ProGuard ProgramJar เพื่อนำคลาสที่อยู่ใน LibraryJar ออก

แท็ก action_command_lines, experimental

--[no]experimental_inmemory_dotd_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์ .d ของ C++ ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_inmemory_jdeps_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์การอ้างอิง (.jdeps) ที่สร้างจากการคอมไพล์ Java ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_retain_test_configuration_across_testonly ค่าเริ่มต้น: "false"

เมื่อเปิดใช้แล้ว --trim_test_configuration จะไม่ตัดการกำหนดค่าการทดสอบสำหรับกฎที่ทำเครื่องหมาย testonly=1 ซึ่งมีจุดประสงค์เพื่อลดปัญหาความขัดแย้งในการดำเนินการเมื่อกฎที่ไม่ใช่การทดสอบขึ้นอยู่กับกฎ cc_test จะไม่มีผลหาก --trim_test_configuration เป็นเท็จ

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_unsupported_and_brittle_include_scanning ค่าเริ่มต้น: "false"

ว่าจะจำกัดอินพุตให้เหลือเฉพาะการคอมไพล์ C/C++ โดยการแยกวิเคราะห์บรรทัด #include จากไฟล์อินพุตหรือไม่ ซึ่งจะช่วยปรับปรุงประสิทธิภาพและส่วนเพิ่มด้วยการลดขนาดของทรีอินพุตการคอมไพล์ อย่างไรก็ตาม การดำเนินการนี้อาจทำให้บิลด์หยุดทำงานได้เนื่องจากเครื่องมือสแกนการรวมไม่ได้ใช้ความหมายของตัวประมวลผล C ล่วงหน้าอย่างเต็มที่ โดยเฉพาะอย่างยิ่ง เครื่องมือนี้ไม่เข้าใจคำสั่ง #include แบบไดนามิกและไม่สนใจตรรกะแบบมีเงื่อนไขของตัวประมวลผลล่วงหน้า คุณต้องรับความเสี่ยงของการใช้งานเอง เราจะปิดปัญหาที่เกี่ยวข้องกับการแจ้งว่าไม่เหมาะสมนี้ทั้งหมด

แท็ก loading_and_analysis, execution, changes_inputs, experimental

--[no]incremental_dexing ค่าเริ่มต้น: "จริง"

ทำงานส่วนใหญ่ในการแยก dexing สำหรับไฟล์ Jar แต่ละไฟล์

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]objc_use_dotd_pruning ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ระบบจะใช้ไฟล์ .d ที่ clang ปล่อยออกมาเพื่อตัดชุดอินพุตที่ส่งไปยังการคอมไพล์ objc

แท็ก changes_inputs, loading_and_analysis

--[no]process_headers_in_dependencies ค่าเริ่มต้น: "false"

เมื่อสร้างเป้าหมาย //a:a ให้ประมวลผลส่วนหัวในเป้าหมายทั้งหมดที่ //a:a ขึ้นอยู่กับ (หากเปิดใช้การประมวลผลส่วนหัวสำหรับเครื่องมือ Toolchain)

แท็ก execution

--[no]trim_test_configuration ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ ตัวเลือกที่เกี่ยวข้องกับการทดสอบจะล้างออกใต้ระดับบนสุดของบิลด์ เมื่อเปิดใช้ฟีเจอร์นี้ คุณจะสร้างการทดสอบเป็นทรัพยากร Dependency ของกฎที่ไม่ใช่การทดสอบไม่ได้ แต่การเปลี่ยนแปลงตัวเลือกที่เกี่ยวข้องกับการทดสอบจะไม่ทำให้ระบบวิเคราะห์กฎที่ไม่ใช่การทดสอบซ้ำ

แท็ก loading_and_analysis, loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: "-.*"

พิมพ์ข้อมูลการแก้ไขข้อบกพร่องระหว่างการแก้ไข Toolchain โดยแฟล็กจะใช้นิพจน์ทั่วไป ซึ่งจะตรวจสอบกับประเภท Toolchain และเป้าหมายที่เฉพาะเจาะจงเพื่อดูว่าควรแก้ไขข้อบกพร่องของรายการใด คุณคั่นนิพจน์ทั่วไปหลายรายการด้วยคอมมาได้ จากนั้นระบบจะตรวจสอบนิพจน์ทั่วไปแต่ละรายการแยกกัน หมายเหตุ: เอาต์พุตของฟีเจอร์นี้มีความซับซ้อนมากและอาจมีประโยชน์เฉพาะผู้เชี่ยวชาญด้านการแก้ไข Toolchain เท่านั้น

แท็ก terminal_output

--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

--[no]incompatible_default_to_explicit_init_py ค่าเริ่มต้น: "false"

โดยแฟล็กนี้จะเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่อให้ระบบไม่สร้างไฟล์ init.py ในไฟล์ที่เรียกใช้ของเป้าหมาย Python โดยอัตโนมัติอีกต่อไป กล่าวคือ เมื่อเป้าหมาย py_binary หรือ py_test มี legacy_create_init ตั้งค่าเป็น "auto" (ค่าเริ่มต้น) ระบบจะถือว่าเป็นเท็จก็ต่อเมื่อมีการตั้งค่าสถานะนี้ ดู https://github.com/bazelbuild/bazel/issues/10076

แท็ก affects_outputs, incompatible_change

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]cache_test_results [-t] default: "auto"

หากตั้งค่าเป็น "auto" Bazel จะเรียกใช้การทดสอบอีกครั้งในกรณีต่อไปนี้เท่านั้น (1) Bazel ตรวจพบการเปลี่ยนแปลงในการทดสอบหรือการขึ้นต่อกัน (2) มีการทำเครื่องหมายการทดสอบเป็นภายนอก (3) มีการขอเรียกใช้การทดสอบหลายครั้งด้วย --runs_per_test หรือ(4) การทดสอบล้มเหลวก่อนหน้านี้ หากตั้งค่าเป็น "ใช่" Bazel จะแคชผลการทดสอบทั้งหมด ยกเว้นการทดสอบที่ทำเครื่องหมายว่าเป็นการทดสอบภายนอก หากตั้งค่าเป็น "no" Bazel จะไม่แคชผลการทดสอบใดๆ

--[no]experimental_cancel_concurrent_tests ค่าเริ่มต้น: "ไม่เลย"

หากเป็น "on_failed" หรือ "on_passed" Blaze จะยกเลิกการทดสอบที่ทำงานพร้อมกันในการเรียกใช้ครั้งแรกที่มีผลลัพธ์ดังกล่าว ซึ่งจะมีประโยชน์เมื่อใช้ร่วมกับ --runs_per_test_detects_flakes เท่านั้น

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_fetch_all_coverage_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะดึงข้อมูลไดเรกทอรีข้อมูลความครอบคลุมทั้งหมดสำหรับการทดสอบแต่ละครั้งในระหว่างการเรียกใช้ความครอบคลุม

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_generate_llvm_lcov ค่าเริ่มต้น: "false"

หากเป็นจริง ความครอบคลุมสำหรับ Clang จะสร้างรายงาน LCOV

แท็ก affects_outputs, loading_and_analysis, experimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> ค่าเริ่มต้น: "bazel"

เปิดใช้ Classpath ที่ลดลงสำหรับการคอมไพล์ Java

--[no]experimental_run_android_lint_on_java_rules ค่าเริ่มต้น: "false"

ว่าจะตรวจสอบแหล่งข้อมูล java_* หรือไม่

แท็ก affects_outputs, experimental

--[no]explicit_java_test_deps ค่าเริ่มต้น: "false"

ระบุการขึ้นต่อ JUnit หรือ Hamcrest อย่างชัดเจนใน java_test แทนที่จะรับจาก deps ของ TestRunner โดยไม่ตั้งใจ ขณะนี้ใช้ได้กับ Bazel เท่านั้น

--host_java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่เครื่องมือใช้ซึ่งจะดำเนินการในระหว่างการสร้าง

--host_javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์

--host_jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์ ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--[no]incompatible_check_sharding_support ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะทำให้การทดสอบที่แยกส่วนล้มเหลวหากโปรแกรมเรียกใช้การทดสอบไม่ได้ระบุว่ารองรับการแยกส่วนโดยการแตะไฟล์ที่เส้นทางใน TEST_SHARD_STATUS_FILE หากเป็นเท็จ โปรแกรมเรียกใช้การทดสอบที่ไม่รองรับการแบ่งพาร์ติชันจะทำให้การทดสอบทั้งหมดทำงานในแต่ละพาร์ติชัน

แท็ก incompatible_change

--[no]incompatible_exclusive_test_sandboxed ค่าเริ่มต้น: "จริง"

หากเป็นจริง การทดสอบแบบเฉพาะจะทำงานร่วมกับกลยุทธ์แซนด์บ็อกซ์ เพิ่มแท็ก "local" เพื่อบังคับให้เรียกใช้การทดสอบแบบเฉพาะในเครื่อง

แท็ก incompatible_change

--[no]incompatible_strict_action_env ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะใช้สภาพแวดล้อมที่มีค่าแบบคงที่สำหรับ PATH และจะไม่รับค่า LD_LIBRARY_PATH ใช้ --action_env=ENV_VARIABLE หากต้องการรับค่าตัวแปรสภาพแวดล้อมที่เฉพาะเจาะจงจากไคลเอ็นต์ แต่โปรดทราบว่าการทำเช่นนี้อาจป้องกันการแคชข้ามผู้ใช้หากใช้แคชที่แชร์

แท็ก loading_and_analysis, incompatible_change

--j2objc_translation_flags=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังเครื่องมือ J2ObjC

--java_debug

ทำให้เครื่องเสมือน Java ของการทดสอบ Java รอการเชื่อมต่อจากโปรแกรมแก้ไขข้อบกพร่องที่สอดคล้องกับ JDWP (เช่น jdb) ก่อนเริ่มการทดสอบ Implies -test_output=streamed.

ขยายเป็น
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps ค่าเริ่มต้น: "จริง"

สร้างข้อมูลการขึ้นต่อกัน (ตอนนี้คือ classpath เวลาคอมไพล์) ต่อเป้าหมาย Java

--[no]java_header_compilation ค่าเริ่มต้น: "จริง"

คอมไพล์ ijar จากแหล่งที่มาโดยตรง

--java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java

--java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่จะใช้เมื่อสร้างไบนารี Java หากตั้งค่าแฟล็กนี้เป็นสตริงว่างเปล่า ระบบจะใช้ตัวเรียกใช้ JDK แอตทริบิวต์ "launcher" จะลบล้างแฟล็กนี้

--java_runtime_version=<a string> ค่าเริ่มต้น: "local_jdk"

เวอร์ชันรันไทม์ของ Java

--javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac

--jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--legacy_main_dex_list_generator=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้เพื่อสร้างรายการคลาสที่ต้องอยู่ใน dex หลักเมื่อคอมไพล์ multidex เดิม

--optimizing_dexer=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้ในการทำ dexing โดยไม่ต้องใช้การแยกส่วน

--plugin=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ปลั๊กอินที่จะใช้ในการสร้าง ปัจจุบันใช้ได้กับ java_plugin

--proguard_top=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ ProGuard ที่จะใช้ในการนำโค้ดออกเมื่อสร้างไบนารี Java

--proto_compiler=<a build target label> default: "@bazel_tools//tools/proto:protoc"

ป้ายกำกับของโปรโตคอมไพเลอร์

แท็ก affects_outputs, loading_and_analysis

--[no]proto_profile ค่าเริ่มต้น: "จริง"

ว่าจะส่ง profile_path ไปยังคอมไพเลอร์โปรโตหรือไม่

แท็ก affects_outputs, loading_and_analysis

--proto_profile_path=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

โปรไฟล์ที่จะส่งไปยังคอมไพเลอร์โปรโตคอลเป็น profile_path หากไม่ได้ตั้งค่า แต่ --proto_profile เป็นจริง (ค่าเริ่มต้น) ระบบจะอนุมานเส้นทางจาก --fdo_optimize

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_cc=<a build target label> default: "@bazel_tools//tools/proto:cc_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ C++

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> ค่าเริ่มต้น: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์โปรโตคอล j2objc

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_java=<a build target label> default: "@bazel_tools//tools/proto:java_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ Java

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ JavaLite

แท็ก affects_outputs, loading_and_analysis

--protocopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ Protobuf

แท็ก affects_outputs

--[no]runs_per_test_detects_flakes ค่าเริ่มต้น: "false"

หากเป็นจริง ชาร์ดใดก็ตามที่มีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ผ่านและมีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ไม่ผ่านจะได้รับสถานะไม่น่าเชื่อถือ

--shell_executable=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ไปยังไฟล์ปฏิบัติการของเชลล์เพื่อให้ Bazel ใช้ หากไม่ได้ตั้งค่านี้ แต่ตั้งค่าตัวแปรสภาพแวดล้อม BAZEL_SH ในการเรียกใช้ Bazel ครั้งแรก (ที่เริ่มต้นเซิร์ฟเวอร์ Bazel) Bazel จะใช้ตัวแปรนั้น หากไม่ได้ตั้งค่าทั้ง 2 อย่าง Bazel จะใช้เส้นทางเริ่มต้นที่ฮาร์ดโค้ดไว้โดยขึ้นอยู่กับระบบปฏิบัติการที่ทำงาน (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, อื่นๆ ทั้งหมด: /bin/bash) โปรดทราบว่าการใช้เชลล์ที่ไม่รองรับ bash อาจทำให้บิลด์ล้มเหลวหรือไบนารีที่สร้างขึ้นรันไทม์ล้มเหลว

แท็ก loading_and_analysis

--test_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวเลือกและอาร์กิวเมนต์เพิ่มเติมที่ควรส่งไปยังไฟล์ปฏิบัติการทดสอบ ใช้ได้หลายครั้งเพื่อระบุอาร์กิวเมนต์หลายรายการ หากมีการเรียกใช้การทดสอบหลายรายการ การทดสอบแต่ละรายการจะได้รับอาร์กิวเมนต์ที่เหมือนกัน ใช้โดยคำสั่ง "bazel test" เท่านั้น

--test_filter=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตัวกรองที่จะส่งต่อให้กับเฟรมเวิร์กการทดสอบ ใช้เพื่อจำกัดการทดสอบที่เรียกใช้ โปรดทราบว่าการดำเนินการนี้ไม่มีผลต่อเป้าหมายที่จะสร้าง

--test_result_expiration=<an integer> ค่าเริ่มต้น: "-1"

ตัวเลือกนี้เลิกใช้งานแล้วและไม่มีผล

--[no]test_runner_fail_fast ค่าเริ่มต้น: "false"

ส่งต่อตัวเลือก "ล้มเหลวอย่างรวดเร็ว" ไปยังโปรแกรมเรียกใช้การทดสอบ โปรแกรมเรียกใช้การทดสอบควรหยุดการดำเนินการเมื่อเกิดข้อผิดพลาดครั้งแรก

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> ค่าเริ่มต้น: "explicit"

ระบุกลยุทธ์สำหรับการแบ่งการทดสอบ: "explicit" เพื่อใช้การแบ่งก็ต่อเมื่อมีแอตทริบิวต์ BUILD "shard_count" "disabled" เพื่อไม่ให้ใช้การแบ่งพาร์ติชันการทดสอบ 'forced=k' เพื่อบังคับใช้ Shard 'k' สำหรับการทดสอบโดยไม่คำนึงถึงแอตทริบิวต์ BUILD ของ 'shard_count'

--tool_java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java ที่ใช้ในการเรียกใช้เครื่องมือที่จำเป็นในระหว่างการสร้าง

--tool_java_runtime_version=<a string> ค่าเริ่มต้น: "remotejdk_11"

เวอร์ชันรันไทม์ Java ที่ใช้ในการเรียกใช้เครื่องมือระหว่างการสร้าง

--[no]use_ijars ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ตัวเลือกนี้จะทำให้การคอมไพล์ Java ใช้ JAR ของอินเทอร์เฟซ ซึ่งจะทําให้การคอมไพล์ที่เพิ่มขึ้นเร็วขึ้น แต่ข้อความแสดงข้อผิดพลาดอาจแตกต่างกัน

ตัวเลือกการสร้าง

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--[no]allow_one_action_on_resource_unavailable ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ให้อนุญาตการดำเนินการอย่างน้อย 1 รายการให้ทำงานแม้ว่าจะมีทรัพยากรไม่เพียงพอหรือไม่พร้อมใช้งาน

แท็ก execution

--[no]check_up_to_date ค่าเริ่มต้น: "false"

อย่าทำการบิลด์ เพียงตรวจสอบว่าบิลด์เป็นเวอร์ชันล่าสุดหรือไม่ หากเป้าหมายทั้งหมดเป็นเวอร์ชันล่าสุด บิลด์จะเสร็จสมบูรณ์ หากต้องดำเนินการขั้นตอนใดก็ตาม ระบบจะรายงานข้อผิดพลาดและบิลด์จะล้มเหลว

แท็ก execution

--dynamic_local_execution_delay=<an integer> ค่าเริ่มต้น: "1000"

ควรหน่วงเวลาการดำเนินการในเครื่องกี่มิลลิวินาที หากการดำเนินการจากระยะไกลเร็วกว่าในระหว่างการบิลด์อย่างน้อย 1 ครั้ง

แท็ก execution, host_machine_resource_optimizations

--dynamic_local_strategy=<a '[name=]value1[,..,valueN]' assignment> มีการสะสมการใช้งานหลายครั้ง

กลยุทธ์ในเครื่องตามลำดับที่จะใช้สำหรับ Mnemonic ที่ระบุ - ระบบจะใช้กลยุทธ์แรกที่ใช้ได้ เช่น worker,sandboxed จะเรียกใช้การดำเนินการที่รองรับ Worker แบบถาวรโดยใช้กลยุทธ์ Worker และการดำเนินการอื่นๆ ทั้งหมดโดยใช้กลยุทธ์ Sandbox หากไม่ได้ระบุคำช่วยจำ ระบบจะใช้รายการกลยุทธ์เป็นข้อมูลสำรองสำหรับคำช่วยจำทั้งหมด รายการสำรองเริ่มต้นคือ worker,sandboxed หรือ worker,sandboxed,standalone หากตั้งค่า experimental_local_lockfree_output ไว้ ใช้ [mnemonic=]local_strategy[,local_strategy,...]

แท็ก execution, host_machine_resource_optimizations

--dynamic_remote_strategy=<a '[name=]value1[,..,valueN]' assignment> มีการสะสมการใช้งานหลายครั้ง

กลยุทธ์ระยะไกลตามลำดับที่จะใช้สำหรับ Mnemonic ที่ระบุ - ใช้กลยุทธ์แรกที่ใช้ได้ หากไม่ได้ระบุคำช่วยจำ ระบบจะใช้รายการกลยุทธ์เป็นข้อมูลสำรองสำหรับคำช่วยจำทั้งหมด รายการสำรองเริ่มต้นคือ remote ดังนั้นโดยปกติแล้วจึงไม่จำเป็นต้องตั้งค่าสถานะนี้อย่างชัดแจ้ง ใช้ [mnemonic=]remote_strategy[,remote_strategy,...]

แท็ก execution, host_machine_resource_optimizations

--[no]experimental_async_execution ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" Bazel จะได้รับอนุญาตให้เรียกใช้การดำเนินการในเธรดเสมือน จำนวนการดำเนินการที่กำลังดำเนินการยังคงจำกัดด้วย --jobs

แท็ก host_machine_resource_optimizations, execution, incompatible_change

--experimental_async_execution_max_concurrent_actions=<an integer> ค่าเริ่มต้น: "5000"

จำนวนการดำเนินการพร้อมกันสูงสุดที่จะเรียกใช้กับการดำเนินการแบบไม่พร้อมกัน หากค่าน้อยกว่า --jobs ค่าจะถูกบีบให้เท่ากับ --jobs

แท็ก host_machine_resource_optimizations, execution

--experimental_docker_image=<a string> ค่าเริ่มต้น: ""

ระบุชื่ออิมเมจ Docker (เช่น "ubuntu:latest") ที่ควรใช้เพื่อดำเนินการแซนด์บ็อกซ์เมื่อใช้กลยุทธ์ Docker และการดำเนินการนั้นยังไม่มีแอตทริบิวต์ container-image ใน remote_execution_properties ในคำอธิบายแพลตฟอร์ม ค่าของแฟล็กนี้จะส่งไปยัง "docker run" ตามตัวอักษร ดังนั้นจึงรองรับไวยากรณ์และกลไกเดียวกันกับ Docker เอง

แท็ก execution

--[no]experimental_docker_use_customized_images ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะแทรก uid และ gid ของผู้ใช้ปัจจุบันลงในอิมเมจ Docker ก่อนที่จะใช้อิมเมจ คุณต้องระบุตัวเลือกนี้หากบิลด์ / การทดสอบของคุณขึ้นอยู่กับผู้ใช้ที่มีชื่อและไดเรกทอรีหน้าแรกภายในคอนเทนเนอร์ ฟีเจอร์นี้จะเปิดอยู่โดยค่าเริ่มต้น แต่คุณสามารถปิดใช้ได้ในกรณีที่ฟีเจอร์การปรับแต่งรูปภาพอัตโนมัติใช้งานไม่ได้ หรือคุณทราบว่าไม่จำเป็นต้องใช้

แท็ก execution

--[no]experimental_dynamic_exclude_tools ค่าเริ่มต้น: "จริง"

เมื่อตั้งค่าแล้ว เป้าหมายที่สร้าง "สำหรับเครื่องมือ" จะไม่อยู่ภายใต้การดำเนินการแบบไดนามิก เป้าหมายดังกล่าวไม่น่าจะสร้างขึ้นได้ทีละน้อย จึงไม่คุ้มค่าที่จะใช้รอบการทำงานในพื้นที่

แท็ก execution, host_machine_resource_optimizations

--experimental_dynamic_local_load_factor=<a double> ค่าเริ่มต้น: "0"

ควบคุมปริมาณการโหลดจากการดำเนินการแบบไดนามิกที่จะใส่ในเครื่อง ฟีเจอร์นี้จะปรับจำนวนการดำเนินการในการดำเนินการแบบไดนามิกที่เราจะกำหนดเวลาพร้อมกัน โดยอิงตามจำนวน CPU ที่ Blaze คิดว่าพร้อมใช้งาน ซึ่งควบคุมได้ด้วยแฟล็ก --local_resources=cpu= หากตั้งค่าสถานะนี้เป็น 0 ระบบจะกำหนดเวลาการดำเนินการทั้งหมดในเครื่องทันที หาก > 0 จำนวนการดำเนินการที่กำหนดเวลาไว้ในเครื่องจะถูกจำกัดตามจำนวน CPU ที่พร้อมใช้งาน หากน้อยกว่า 1 ระบบจะใช้ปัจจัยการโหลดเพื่อลดจำนวนการดำเนินการที่กำหนดเวลาไว้ในเครื่องเมื่อมีการดำเนินการจำนวนมากที่รอการกำหนดเวลา ซึ่งจะช่วยลดภาระในเครื่องในกรณีที่สร้างคลีนบิลด์ ซึ่งเครื่องไม่ได้มีส่วนร่วมมากนัก

แท็ก execution, host_machine_resource_optimizations

--experimental_dynamic_slow_remote_time=<An immutable length of time.> ค่าเริ่มต้น: "0"

หาก >0 เวลาที่การดำเนินการที่เรียกใช้แบบไดนามิกต้องเรียกใช้จากระยะไกลเท่านั้นก่อนที่เราจะจัดลําดับความสําคัญของการเรียกใช้ในเครื่องเพื่อหลีกเลี่ยงการหมดเวลาจากระยะไกล ซึ่งอาจซ่อนปัญหาบางอย่างในระบบการดำเนินการระยะไกล อย่าเปิดใช้ตัวเลือกนี้หากไม่ได้ตรวจสอบปัญหาการดำเนินการจากระยะไกล

แท็ก execution, host_machine_resource_optimizations

--[no]experimental_enable_docker_sandbox ค่าเริ่มต้น: "false"

เปิดใช้แซนด์บ็อกซ์ที่ใช้ Docker ตัวเลือกนี้จะไม่มีผลหากไม่ได้ติดตั้ง Docker

แท็ก execution

--[no]experimental_inmemory_sandbox_stashes ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ระบบจะติดตามเนื้อหาของแซนด์บ็อกซ์ที่ซ่อนไว้สำหรับ reuse_sandbox_directories ในหน่วยความจำ ซึ่งจะช่วยลดปริมาณ I/O ที่จำเป็นในระหว่างการนำกลับมาใช้ใหม่ แฟล็กนี้อาจช่วยปรับปรุงเวลาจริงได้ ขึ้นอยู่กับบิลด์ นอกจากนี้ ขึ้นอยู่กับบิลด์ด้วยว่าแฟล็กนี้อาจใช้หน่วยความจำเพิ่มเติมจำนวนมาก

แท็ก 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"> ค่าเริ่มต้น: "4"

หากเป็น 0 ระบบจะลบแซนด์บ็อกซ์ทันทีที่การดำเนินการเสร็จสิ้น ซึ่งจะบล็อกการดำเนินการให้เสร็จสมบูรณ์ หากมากกว่า 0 ระบบจะลบแซนด์บ็อกซ์แบบไม่พร้อมกันในเบื้องหลังโดยไม่บล็อกการดำเนินการให้เสร็จสมบูรณ์ การลบแบบไม่พร้อมกันจะใช้เธรดเดียวขณะที่คำสั่งทำงาน แต่จะเพิ่มจำนวนเธรดเป็นค่าของแฟล็กนี้เมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตั้งค่าเป็น auto เพื่อใช้จำนวนเธรดเท่ากับจำนวน CPU การปิดเซิร์ฟเวอร์จะบล็อกการลบแบบอะซิงโครนัสที่รอดำเนินการ

แท็ก host_machine_resource_optimizations, execution

--experimental_sandbox_enforce_resources_regexp=<a valid Java regular expression> ค่าเริ่มต้น: ""

หากเป็น "จริง" การดำเนินการที่มีนิโมนิกตรงกับนิพจน์ทั่วไปของอินพุตจะมีการบังคับใช้คำขอทรัพยากรเป็นขีดจำกัด ซึ่งจะลบล้างค่าของ --experimental_sandbox_limits หากประเภททรัพยากรรองรับ เช่น การทดสอบที่ประกาศ cpu:3 และ resources:memory:10 จะทำงานโดยใช้ CPU อย่างมากที่สุด 3 รายการและหน่วยความจำ 10 เมกะไบต์

แท็ก 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"> มีการสะสมการใช้งานหลายครั้ง

หาก > 0 แต่ละแซนด์บ็อกซ์ Linux จะจำกัดจำนวนตามที่ระบุสำหรับทรัพยากรที่กำหนด ต้องใช้ --incompatible_use_new_cgroup_implementation และลบล้าง --experimental_sandbox_memory_limit_mb ต้องใช้ cgroups v1 หรือ v2 และสิทธิ์สำหรับผู้ใช้ในไดเรกทอรี cgroups

แท็ก execution

--experimental_sandbox_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> ค่าเริ่มต้น: "0"

หาก > 0 ระบบจะจำกัดแซนด์บ็อกซ์ Linux แต่ละรายการให้ใช้หน่วยความจำตามจำนวนที่ระบุ (เป็น MB) ต้องใช้ cgroups v1 หรือ v2 และสิทธิ์สำหรับผู้ใช้ในไดเรกทอรี cgroups

แท็ก execution

--[no]experimental_shrink_worker_pool ค่าเริ่มต้น: "false"

หากเปิดใช้ อาจลดขนาดพูลผู้ปฏิบัติงานได้หากแรงกดดันด้านหน่วยความจำของผู้ปฏิบัติงานสูง แฟล็กนี้จะทำงานเมื่อเปิดใช้แฟล็ก experimental_total_worker_memory_limit_mb เท่านั้น

แท็ก execution, host_machine_resource_optimizations

--experimental_total_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> ค่าเริ่มต้น: "0"

หากขีดจำกัดนี้มากกว่า 0 ระบบอาจหยุดการทำงานของผู้ปฏิบัติงานที่ไม่ได้ใช้งานหากการใช้หน่วยความจำทั้งหมดของผู้ปฏิบัติงานทั้งหมดเกินขีดจำกัด

แท็ก execution, host_machine_resource_optimizations

--[no]experimental_use_hermetic_linux_sandbox ค่าเริ่มต้น: "false"

หากตั้งค่าเป็นจริง อย่าติดตั้งรูท ให้ติดตั้งเฉพาะสิ่งที่ระบุด้วย sandbox_add_mount_pair ระบบจะลิงก์ไฟล์อินพุตแบบฮาร์ดลิงก์ไปยังแซนด์บ็อกซ์แทนที่จะเป็นลิงก์สัญลักษณ์จากแซนด์บ็อกซ์ หากไฟล์อินพุตของการดำเนินการอยู่ในระบบไฟล์ที่แตกต่างจากแซนด์บ็อกซ์ ระบบจะคัดลอกไฟล์อินพุตแทน

แท็ก execution

--[no]experimental_use_windows_sandbox ค่าเริ่มต้น: "false"

ใช้ Windows Sandbox เพื่อเรียกใช้การดำเนินการ หากตอบว่า "ใช่" ไบนารีที่ระบุโดย --experimental_windows_sandbox_path ต้องถูกต้องและสอดคล้องกับ sandboxfs เวอร์ชันที่รองรับ หากเป็น "auto" แสดงว่าไบนารีอาจขาดหายไปหรือไม่รองรับ

แท็ก execution

--experimental_windows_sandbox_path=<a string> ค่าเริ่มต้น: "BazelSandbox.exe"

เส้นทางไปยังไบนารีของ Windows Sandbox ที่จะใช้เมื่อ --experimental_use_windows_sandbox เป็นจริง หากเป็นชื่อที่ไม่มีการระบุพาธ ให้ใช้ไบนารีแรกของชื่อนั้นที่พบใน PATH

แท็ก execution

--experimental_worker_allowlist=<comma-separated set of options> ค่าเริ่มต้น: ดูคำอธิบาย

หากไม่ว่าง ให้อนุญาตให้ใช้เฉพาะ Worker แบบถาวรที่มีมnemonic คีย์ Worker ที่ระบุ

แท็ก execution, host_machine_resource_optimizations

--[no]experimental_worker_cancellation ค่าเริ่มต้น: "false"

หากเปิดใช้ Bazel อาจส่งคำขอยกเลิกไปยัง Worker ที่รองรับ

แท็ก execution

--experimental_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> ค่าเริ่มต้น: "0"

หากขีดจำกัดนี้มากกว่า 0 ระบบอาจหยุดการทำงานของ Worker หากการใช้หน่วยความจำของ Worker เกินขีดจำกัด หากไม่ได้ใช้ร่วมกับการดำเนินการแบบไดนามิกและ --experimental_dynamic_ignore_local_signals=9 การดำเนินการนี้อาจทำให้บิลด์ขัดข้อง

แท็ก execution, host_machine_resource_optimizations

--experimental_worker_metrics_poll_interval=<An immutable length of time.> ค่าเริ่มต้น: "5s"

ช่วงเวลาระหว่างการรวบรวมเมตริกของ Worker กับการพยายามดีดออก ไม่สามารถต่ำกว่า 1 วินาทีได้อย่างมีประสิทธิภาพเนื่องด้วยเหตุผลด้านประสิทธิภาพ

แท็ก execution, host_machine_resource_optimizations

--[no]experimental_worker_multiplex_sandboxing ค่าเริ่มต้น: "false"

หากเปิดใช้ไว้ Worker แบบมัลติเพล็กซ์ที่มีข้อกำหนดในการดำเนินการ "supports-multiplex-sandboxing" จะทำงานในสภาพแวดล้อมแบบแซนด์บ็อกซ์ โดยใช้ไดเรกทอรีแซนด์บ็อกซ์แยกต่างหากต่อคำของาน ระบบจะแซนด์บ็อกซ์ผู้ปฏิบัติงาน Multiplex ที่มีข้อกำหนดในการดำเนินการเสมอเมื่อเรียกใช้ภายใต้กลยุทธ์การดำเนินการแบบไดนามิก โดยไม่คำนึงถึงแฟล็กนี้

แท็ก execution

--[no]experimental_worker_sandbox_hardening ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะเรียกใช้ Worker ในแซนด์บ็อกซ์ที่ได้รับการเสริมความแข็งแกร่ง หากการติดตั้งใช้งานอนุญาต หากเปิดใช้การเพิ่มความปลอดภัย ไดเรกทอรี tmp จะแตกต่างกันสำหรับ Worker แต่ละราย

แท็ก execution

--experimental_worker_sandbox_inmemory_tracking=<a string> มีการสะสมการใช้งานหลายครั้ง

คำช่วยจำสำหรับคีย์ของ Worker ซึ่งจะมีการติดตามเนื้อหาของไดเรกทอรีแซนด์บ็อกซ์ในหน่วยความจำ ซึ่งอาจปรับปรุงประสิทธิภาพการสร้างโดยแลกกับการใช้หน่วยความจำเพิ่มเติม มีผลเฉพาะกับ Worker ที่อยู่ในแซนด์บ็อกซ์ อาจระบุหลายครั้งสำหรับนิโมนิกที่แตกต่างกัน

แท็ก execution

--[no]experimental_worker_strict_flagfiles ค่าเริ่มต้น: "false"

หากเปิดใช้ อาร์กิวเมนต์การดำเนินการสำหรับ Worker ที่ไม่เป็นไปตามข้อกำหนดของ Worker จะทำให้เกิดข้อผิดพลาด อาร์กิวเมนต์ของ Worker ต้องมีอาร์กิวเมนต์ @flagfile เพียงรายการเดียวเป็นอาร์กิวเมนต์สุดท้ายในรายการอาร์กิวเมนต์

แท็ก execution

--genrule_strategy=<comma-separated list of options> ค่าเริ่มต้น: ""

ระบุวิธีเรียกใช้ genrules เราจะเลิกใช้ธงนี้ ให้ใช้ --spawn_strategy=<value> เพื่อควบคุมการดำเนินการทั้งหมด หรือ --strategy=Genrule=<value> เพื่อควบคุม genrule เท่านั้น

แท็ก execution

--[no]incompatible_use_new_cgroup_implementation ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้การติดตั้งใช้งานใหม่สำหรับ cgroup การใช้งานแบบเก่ารองรับเฉพาะตัวควบคุมหน่วยความจำและไม่สนใจค่าของ --experimental_sandbox_limits

แท็ก execution

--[no]internal_spawn_scheduler ค่าเริ่มต้น: "จริง"

ตัวเลือกตัวยึดตำแหน่งเพื่อให้เราบอกได้ใน Blaze ว่ามีการเปิดใช้ตัวกำหนดเวลางานที่สร้างขึ้นหรือไม่

แท็ก 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] default: "auto"

จำนวนงานที่จะเรียกใช้พร้อมกัน รับจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" ค่าต้องอยู่ระหว่าง 1 ถึง 5000 ค่าที่สูงกว่า 2500 อาจทำให้เกิดปัญหาเกี่ยวกับหน่วยความจำ "auto" จะคำนวณค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์

แท็ก host_machine_resource_optimizations, execution

--[no]keep_going [-k] ค่าเริ่มต้น: "false"

ดำเนินการต่อให้ได้มากที่สุดหลังจากเกิดข้อผิดพลาด แม้ว่าจะวิเคราะห์เป้าหมายที่ล้มเหลวและเป้าหมายที่ขึ้นอยู่กับเป้าหมายดังกล่าวไม่ได้ แต่ก็วิเคราะห์ข้อกำหนดเบื้องต้นอื่นๆ ของเป้าหมายเหล่านี้ได้

แท็ก 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"> ค่าเริ่มต้น: "auto"

จำนวนเธรดแบบขนานที่จะใช้ในระยะการโหลด/การวิเคราะห์ รับค่าจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะตั้งค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์ ต้องไม่ต่ำกว่า 1

แท็ก bazel_internal_configuration

--[no]reuse_sandbox_directories ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น "จริง" ระบบอาจนำไดเรกทอรีที่ใช้โดยการดำเนินการแบบแซนด์บ็อกซ์ที่ไม่ใช่ Worker กลับมาใช้ใหม่เพื่อหลีกเลี่ยงค่าใช้จ่ายในการตั้งค่าที่ไม่จำเป็น

แท็ก host_machine_resource_optimizations, execution

--sandbox_base=<a string> ค่าเริ่มต้น: ""

อนุญาตให้แซนด์บ็อกซ์สร้างไดเรกทอรีแซนด์บ็อกซ์ภายใต้เส้นทางนี้ ระบุเส้นทางใน tmpfs (เช่น /run/shm) เพื่ออาจปรับปรุงประสิทธิภาพได้มากเมื่อการสร้าง / การทดสอบมีไฟล์อินพุตจำนวนมาก หมายเหตุ: คุณต้องมี RAM และพื้นที่ว่างใน tmpfs เพียงพอที่จะจัดเก็บไฟล์เอาต์พุตและไฟล์กลางที่สร้างขึ้นจากการเรียกใช้การดำเนินการ

แท็ก host_machine_resource_optimizations, execution

--[no]sandbox_enable_loopback_device ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะตั้งค่าอุปกรณ์ Loopback ในเนมสเปซเครือข่าย linux-sandbox สำหรับการดำเนินการในเครื่อง

แท็ก execution

--[no]sandbox_explicit_pseudoterminal ค่าเริ่มต้น: "false"

เปิดใช้การสร้างเทอร์มินัลเสมือนสำหรับการดำเนินการในแซนด์บ็อกซ์อย่างชัดเจน การกระจาย Linux บางรายการกำหนดให้ตั้งค่ารหัสกลุ่มของกระบวนการเป็น "tty" ภายในแซนด์บ็อกซ์เพื่อให้เทอร์มินัลเสมือนทำงานได้ หากทำให้เกิดปัญหา คุณสามารถปิดใช้ Flag นี้เพื่อเปิดใช้กลุ่มอื่นๆ ได้

แท็ก execution

--sandbox_tmpfs_path=<an absolute path> มีการสะสมการใช้งานหลายครั้ง

สำหรับการดำเนินการในแซนด์บ็อกซ์ ให้ติดตั้งไดเรกทอรีที่ว่างเปล่าและเขียนได้ที่เส้นทางแบบสัมบูรณ์นี้ (หากการติดตั้งแซนด์บ็อกซ์รองรับ มิเช่นนั้นจะถูกละเว้น)

แท็ก host_machine_resource_optimizations, execution

--[no]skip_incompatible_explicit_targets ค่าเริ่มต้น: "false"

ข้ามเป้าหมายที่ไม่รองรับซึ่งแสดงอย่างชัดเจนในบรรทัดคำสั่ง โดยค่าเริ่มต้น การสร้างเป้าหมายดังกล่าวจะทำให้เกิดข้อผิดพลาด แต่ระบบจะข้ามเป้าหมายเหล่านั้นโดยไม่แจ้งให้ทราบเมื่อเปิดใช้ตัวเลือกนี้ ดูที่ https://bazel.build/extending/platforms#skipping-incompatible-targets

แท็ก loading_and_analysis

--spawn_strategy=<comma-separated list of options> ค่าเริ่มต้น: ""

ระบุวิธีดำเนินการกับการดำเนินการสแปมโดยค่าเริ่มต้น ยอมรับรายการกลยุทธ์ที่คั่นด้วยคอมมาจากลำดับความสำคัญสูงสุดไปต่ำสุด สำหรับการดำเนินการแต่ละอย่าง Bazel จะเลือกกลยุทธ์ที่มีลำดับความสำคัญสูงสุดซึ่งสามารถดำเนินการได้ ค่าเริ่มต้นคือ "remote,worker,sandboxed,local" ดูรายละเอียดได้ที่ https://blog.bazel.build/2019/06/19/list-strategy.html

แท็ก execution

--strategy=<a '[name=]value1[,..,valueN]' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุวิธีแจกจ่ายการรวบรวมการดำเนินการเกิดอื่นๆ ยอมรับรายการกลยุทธ์ที่คั่นด้วยคอมมาจากลำดับความสำคัญสูงสุดไปต่ำสุด สำหรับการดำเนินการแต่ละอย่าง Bazel จะเลือกกลยุทธ์ที่มีลำดับความสำคัญสูงสุดซึ่งสามารถดำเนินการได้ ค่าเริ่มต้นคือ "remote,worker,sandboxed,local" แฟล็กนี้จะลบล้างค่าที่ตั้งค่าโดย --spawn_strategy (และ --genrule_strategy หากใช้กับ Genrule แบบมีคำช่วยจำ) ดูรายละเอียดได้ที่ https://blog.bazel.build/2019/06/19/list-strategy.html

แท็ก execution

--strategy_regexp=<a '<RegexFilter>=value[,value]' assignment> มีการสะสมการใช้งานหลายครั้ง

ลบล้างกลยุทธ์การเกิดที่ควรใช้เพื่อดำเนินการกับการเกิดที่มีคำอธิบายตรงกับ regex_filter ที่เฉพาะเจาะจง ดูรายละเอียดเกี่ยวกับการจับคู่ regex_filter ได้ที่ --per_file_copt ระบบจะใช้ regex_filter สุดท้ายที่ตรงกับคำอธิบาย ตัวเลือกนี้จะลบล้างแฟล็กอื่นๆ สำหรับการระบุกลยุทธ์ ตัวอย่าง: --strategy_regexp=//foo..cc,-//foo/bar=local หมายถึงการเรียกใช้การดำเนินการโดยใช้กลยุทธ์ภายในหากคำอธิบายตรงกับ //foo..cc แต่ไม่ตรงกับ //foo/bar ตัวอย่าง: --strategy_regexp='Compiling.*/bar=local --strategy_regexp=Compiling=sandboxed จะเรียกใช้ "Compiling //foo/bar/baz" ด้วยกลยุทธ์ "local" แต่การย้อนลําดับจะเรียกใช้ด้วยกลยุทธ์ "sandboxed"

แท็ก execution

--worker_extra_flag=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แฟล็กคำสั่งเพิ่มเติมที่จะส่งไปยังกระบวนการของ Worker นอกเหนือจาก --persistent_worker โดยมีคีย์เป็นมνηนิมิต (เช่น --worker_extra_flag=Javac=--debug

แท็ก 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"> มีการสะสมการใช้งานหลายครั้ง

หากใช้กลยุทธ์ "worker" คุณจะเปิดใช้ Worker ถาวรแต่ละประเภทได้กี่อินสแตนซ์ อาจระบุเป็น [name=value] เพื่อให้ค่าที่แตกต่างกันต่อมnemonic ขีดจำกัดจะอิงตามคีย์ผู้ปฏิบัติงาน ซึ่งจะแตกต่างกันตามมnemonic แต่ยังอิงตามแฟล็กการเริ่มต้นและสภาพแวดล้อมด้วย ดังนั้นในบางกรณีอาจมีผู้ปฏิบัติงานต่อ mnemonic มากกว่าที่แฟล็กนี้ระบุ รับจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะคำนวณค่าเริ่มต้นที่เหมาะสมตามความจุของเครื่อง "=value" จะตั้งค่าเริ่มต้นสำหรับตัวช่วยจำที่ไม่ได้ระบุ

แท็ก 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"> มีการสะสมการใช้งานหลายครั้ง

จำนวน WorkRequest ที่กระบวนการของ Worker แบบมัลติเพล็กซ์อาจได้รับแบบขนาน หากคุณใช้กลยุทธ์ "worker" กับ --worker_multiplex อาจระบุเป็น [name=value] เพื่อให้ค่าที่แตกต่างกันต่อมnemonic ขีดจำกัดจะอิงตามคีย์ผู้ปฏิบัติงาน ซึ่งจะแตกต่างกันตามมnemonic แต่ยังอิงตามแฟล็กการเริ่มต้นและสภาพแวดล้อมด้วย ดังนั้นในบางกรณีอาจมีผู้ปฏิบัติงานต่อ mnemonic มากกว่าที่แฟล็กนี้ระบุ รับจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะคำนวณค่าเริ่มต้นที่เหมาะสมตามความจุของเครื่อง "=value" จะตั้งค่าเริ่มต้นสำหรับตัวช่วยจำที่ไม่ได้ระบุ

แท็ก execution, host_machine_resource_optimizations

--[no]worker_multiplex ค่าเริ่มต้น: "จริง"

หากเปิดใช้ พนักงานจะใช้การมัลติเพล็กซ์หากรองรับ

แท็ก execution, host_machine_resource_optimizations

--[no]worker_quit_after_build ค่าเริ่มต้น: "false"

หากเปิดใช้ ผู้ปฏิบัติงานทั้งหมดจะหยุดทำงานหลังจากสร้างเสร็จ

แท็ก execution, host_machine_resource_optimizations

--[no]worker_sandboxing ค่าเริ่มต้น: "false"

หากเปิดใช้แล้ว Worker แบบ Singleplex จะทำงานในสภาพแวดล้อมแซนด์บ็อกซ์ Worker แบบ Singleplex จะอยู่ในแซนด์บ็อกซ์เสมอเมื่อทำงานภายใต้กลยุทธ์การดำเนินการแบบไดนามิก ไม่ว่าจะมีแฟล็กนี้หรือไม่ก็ตาม

แท็ก execution

--[no]worker_verbose ค่าเริ่มต้น: "false"

หากเปิดใช้ จะพิมพ์ข้อความแบบละเอียดเมื่อเริ่ม หยุดทำงาน ฯลฯ ของ Worker

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]build ค่าเริ่มต้น: "จริง"

เรียกใช้การสร้าง ซึ่งเป็นลักษณะการทำงานปกติ การระบุ --nobuild จะทำให้การสร้างหยุดก่อนที่จะดำเนินการสร้างการดำเนินการ โดยจะคืนค่าเป็น 0 หากโหลดแพ็กเกจและวิเคราะห์เฟสเสร็จสมบูรณ์ โหมดนี้มีประโยชน์สำหรับการทดสอบเฟสเหล่านั้น

แท็ก execution, affects_outputs

--[no]experimental_use_validation_aspect ค่าเริ่มต้น: "false"

จะเรียกใช้การดำเนินการตรวจสอบโดยใช้แง่มุม (เพื่อความขนานกับการทดสอบ) หรือไม่

แท็ก execution, affects_outputs

--output_groups=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อกลุ่มเอาต์พุตที่คั่นด้วยคอมมา โดยแต่ละชื่ออาจมีคำนำหน้าเป็น + หรือ - ก็ได้ กลุ่มที่มีคำนำหน้าเป็น + จะเพิ่มลงในชุดกลุ่มเอาต์พุตเริ่มต้น ส่วนกลุ่มที่มีคำนำหน้าเป็น - จะนำออกจากชุดเริ่มต้น หากไม่มีการนำหน้ากลุ่มอย่างน้อย 1 กลุ่ม ระบบจะไม่แสดงชุดกลุ่มเอาต์พุตเริ่มต้น เช่น --output_groups=+foo,+bar จะสร้างการรวมของชุดเริ่มต้น foo และ bar ในขณะที่ --output_groups=foo,bar จะลบล้างชุดเริ่มต้นเพื่อให้สร้างเฉพาะ foo และ bar

แท็ก execution, affects_outputs

--[no]run_validations ค่าเริ่มต้น: "จริง"

ว่าจะเรียกใช้การดำเนินการตรวจสอบเป็นส่วนหนึ่งของการสร้างหรือไม่ ดู https://bazel.build/extending/rules#validation_actions

แท็ก execution, affects_outputs

--serialized_frontier_profile=<a string> ค่าเริ่มต้น: ""

ส่งออกโปรไฟล์ของไบต์ฟรอนเทียร์ที่ทำให้เป็นอนุกรม ระบุเส้นทางเอาต์พุต

แท็ก bazel_monitoring

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการแง่มุมที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายระดับบนสุด ในรายการ หากแอตทริบิวต์ some_aspect ระบุผู้ให้บริการแอตทริบิวต์ที่จำเป็นผ่าน required_aspect_providers แอตทริบิวต์ some_aspect จะทํางานหลังจากแอตทริบิวต์ทุกรายการที่กล่าวถึงก่อนหน้านี้ในรายการแอตทริบิวต์ ซึ่งผู้ให้บริการที่โฆษณาเป็นไปตามผู้ให้บริการแอตทริบิวต์ที่จำเป็นของ some_aspect นอกจากนี้ some_aspect จะทํางานหลังจากแง่มุมที่จําเป็นทั้งหมดที่ระบุโดยแอตทริบิวต์ requires จากนั้น some_aspect จะมีสิทธิ์เข้าถึงค่าของผู้ให้บริการแง่มุมเหล่านั้น <bzl-file-label>%<aspect_name> เช่น '//tools:my_def.bzl%my_aspect' โดยที่ 'my_aspect' เป็นค่าระดับบนสุดจากไฟล์ tools/my_def.bzl

--bep_maximum_open_remote_upload_files=<an integer> ค่าเริ่มต้น: "-1"

จำนวนไฟล์ที่เปิดสูงสุดที่อนุญาตในระหว่างการอัปโหลดอาร์ติแฟกต์ BEP

แท็ก affects_outputs

แฟล็กนี้ควบคุมวิธีจัดการลิงก์สัญลักษณ์ที่สะดวก (ลิงก์สัญลักษณ์ที่ปรากฏในพื้นที่ทำงานหลังจากการสร้าง) ค่าที่เป็นไปได้ normal (ค่าเริ่มต้น): ระบบจะสร้างหรือลบซิมลิงก์อำนวยความสะดวกแต่ละประเภทตามที่การสร้างกำหนด clean: ระบบจะลบซิมลิงก์ทั้งหมดโดยไม่มีเงื่อนไข ignore: ระบบจะไม่สร้างหรือล้างข้อมูลซิมลิงก์ log_only: สร้างข้อความบันทึกราวกับว่ามีการส่ง "normal" แต่ไม่ได้ดำเนินการใดๆ ในระบบไฟล์ (มีประโยชน์สำหรับเครื่องมือ) โปรดทราบว่าเฉพาะ Symlink ที่ชื่อสร้างขึ้นจากค่าปัจจุบันของ --symlink_prefix เท่านั้นที่จะได้รับผลกระทบ หากคำนำหน้ามีการเปลี่ยนแปลง ระบบจะไม่แตะต้อง Symlink ที่มีอยู่ก่อนแล้ว

แท็ก affects_outputs

แฟล็กนี้จะควบคุมว่าเราจะโพสต์เหตุการณ์บิลด์ ConvenienceSymlinksIdentified ไปยัง BuildEventProtocol หรือไม่ หากค่าเป็นจริง BuildEventProtocol จะมีรายการสำหรับ convenienceSymlinksIdentified ซึ่งแสดงรายการลิงก์สัญลักษณ์ที่สะดวกทั้งหมดที่สร้างขึ้นในพื้นที่ทำงาน หากเป็นเท็จ รายการ convenienceSymlinksIdentified ใน BuildEventProtocol จะว่างเปล่า

แท็ก affects_outputs

--remote_download_all

ดาวน์โหลดเอาต์พุตระยะไกลทั้งหมดไปยังเครื่องในพื้นที่ แฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=all

ขยายเป็น
  --remote_download_outputs=all

แท็ก affects_outputs

--remote_download_minimal

ไม่ดาวน์โหลดเอาต์พุตการสร้างระยะไกลไปยังเครื่อง แฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=minimal

ขยายเป็น
  --remote_download_outputs=minimal

แท็ก affects_outputs

--remote_download_outputs=<all, minimal or toplevel> default: "toplevel"

หากตั้งค่าเป็น "น้อยที่สุด" ระบบจะไม่ดาวน์โหลดเอาต์พุตการบิลด์ระยะไกลไปยังเครื่องในเครื่อง ยกเว้นเอาต์พุตที่การกระทำในเครื่องกำหนดไว้ หากตั้งค่าเป็น "toplevel" จะทํางานเหมือน "minimal" ยกเว้นว่าจะดาวน์โหลดเอาต์พุตของเป้าหมายระดับบนสุดไปยังเครื่องภายในระบบด้วย ทั้ง 2 ตัวเลือกช่วยลดเวลาในการสร้างได้อย่างมากหากแบนด์วิดท์ของเครือข่ายเป็นคอขวด

แท็ก affects_outputs

สร้างลิงก์สัญลักษณ์แทนการดาวน์โหลดเอาต์พุตของบิลด์ระยะไกลไปยังเครื่องภายใน คุณระบุเป้าหมายของลิงก์สัญลักษณ์ได้ในรูปแบบของสตริงเทมเพลต สตริงเทมเพลตนี้อาจมี {hash} และ {size_bytes} ซึ่งจะขยายเป็นแฮชของออบเจ็กต์และขนาดในหน่วยไบต์ตามลำดับ ตัวอย่างเช่น ลิงก์สัญลักษณ์เหล่านี้อาจชี้ไปยังระบบไฟล์ FUSE ที่โหลดออบเจ็กต์จาก CAS ตามต้องการ

แท็ก affects_outputs

--remote_download_toplevel

ดาวน์โหลดเฉพาะเอาต์พุตระยะไกลของเป้าหมายระดับบนสุดไปยังเครื่องในพื้นที่ โดยแฟล็กนี้เป็นชื่อแทนของ --remote_download_outputs=toplevel

ขยายเป็น
  --remote_download_outputs=toplevel

แท็ก affects_outputs

คำนำหน้าที่เพิ่มลงในลิงก์สัญลักษณ์ที่สะดวกซึ่งสร้างขึ้นหลังจากการสร้าง หากไม่ระบุ ค่าเริ่มต้นจะเป็นชื่อของเครื่องมือบิลด์ตามด้วยขีดกลาง หากส่ง '/' ระบบจะไม่สร้างลิงก์สัญลักษณ์และจะไม่แสดงคำเตือน คำเตือน: ฟังก์ชันพิเศษสำหรับ "/" จะเลิกใช้งานในเร็วๆ นี้ โปรดใช้ --experimental_convenience_symlinks=ignore แทน

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]experimental_docker_privileged ค่าเริ่มต้น: "false"

หากเปิดใช้ Bazel จะส่งแฟล็ก --privileged ไปยัง "docker run" เมื่อเรียกใช้การดำเนินการ การดำเนินการนี้อาจจำเป็นสำหรับการบิลด์ แต่ก็อาจส่งผลให้ความสามารถในการทำซ้ำลดลงด้วย

แท็ก execution

ไม่มีการดำเนินการ

แท็ก host_machine_resource_optimizations, execution

--sandbox_add_mount_pair=<a single path or a 'source:target' pair> มีการสะสมการใช้งานหลายครั้ง

เพิ่มคู่เส้นทางเพิ่มเติมเพื่อติดตั้งในแซนด์บ็อกซ์

แท็ก execution

--sandbox_block_path=<a string> มีการสะสมการใช้งานหลายครั้ง

สำหรับการดำเนินการในแซนด์บ็อกซ์ ให้ไม่อนุญาตการเข้าถึงเส้นทางนี้

แท็ก execution

--[no]sandbox_default_allow_network ค่าเริ่มต้น: "จริง"

อนุญาตการเข้าถึงเครือข่ายโดยค่าเริ่มต้นสำหรับการดำเนินการ ซึ่งอาจใช้ไม่ได้กับการติดตั้งใช้งานแซนด์บ็อกซ์บางอย่าง

แท็ก execution

--[no]sandbox_fake_hostname ค่าเริ่มต้น: "false"

เปลี่ยนชื่อโฮสต์ปัจจุบันเป็น "localhost" สำหรับการดำเนินการในแซนด์บ็อกซ์

แท็ก execution

--[no]sandbox_fake_username ค่าเริ่มต้น: "false"

เปลี่ยนชื่อผู้ใช้ปัจจุบันเป็น "nobody" สำหรับการดำเนินการในแซนด์บ็อกซ์

แท็ก execution

--sandbox_writable_path=<a string> มีการสะสมการใช้งานหลายครั้ง

สำหรับการดำเนินการในแซนด์บ็อกซ์ ให้ทำให้ไดเรกทอรีที่มีอยู่เขียนได้ในแซนด์บ็อกซ์ (หากการติดตั้งใช้งานแซนด์บ็อกซ์รองรับ มิฉะนั้นจะละเว้น)

แท็ก execution

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]check_tests_up_to_date ค่าเริ่มต้น: "false"

อย่าเรียกใช้การทดสอบ เพียงตรวจสอบว่าการทดสอบเป็นเวอร์ชันล่าสุดหรือไม่ หากผลการทดสอบทั้งหมดเป็นข้อมูลล่าสุด การทดสอบจะเสร็จสมบูรณ์ หากต้องสร้างหรือเรียกใช้การทดสอบ ระบบจะรายงานข้อผิดพลาดและการทดสอบจะล้มเหลว ตัวเลือกนี้หมายถึงลักษณะการทำงานของ --check_up_to_date

แท็ก execution

--flaky_test_attempts=<a positive integer, the string "default", or test_regex@attempts. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบบจะลองทำการทดสอบแต่ละรายการซ้ำตามจำนวนครั้งที่ระบุในกรณีที่การทดสอบล้มเหลว การทดสอบที่ต้องลองมากกว่า 1 ครั้งจึงจะผ่านจะมีการทำเครื่องหมายเป็น "ไม่เสถียร" ในสรุปการทดสอบ โดยปกติแล้ว ค่าที่ระบุจะเป็นเพียงจำนวนเต็มหรือสตริง "default" หากเป็นจำนวนเต็ม ระบบจะเรียกใช้การทดสอบทั้งหมดสูงสุด N ครั้ง หากเป็น "default" ระบบจะพยายามทดสอบเพียงครั้งเดียวสำหรับการทดสอบปกติ และ 3 ครั้งสำหรับการทดสอบที่กฎระบุอย่างชัดเจนว่าไม่น่าเชื่อถือ (แอตทริบิวต์ flaky=1) ไวยากรณ์สำรอง: regex_filter@flaky_test_attempts โดยที่ flaky_test_attempts เป็นดังที่กล่าวข้างต้น และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --runs_per_test ด้วย) ตัวอย่าง: --flaky_test_attempts=//foo/.,-//foo/bar/.@3 deflakes การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบใน foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ลักษณะการทำงานจะเป็นเหมือนกับ "ค่าเริ่มต้น" ด้านบน

แท็ก 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"> ค่าเริ่มต้น: "auto"

จำนวนสูงสุดของงานทดสอบในเครื่องที่จะเรียกใช้พร้อมกัน รับจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" 0 หมายความว่าทรัพยากรในเครื่องจะจำกัดจำนวนงานทดสอบในเครื่องที่จะเรียกใช้พร้อมกันแทน การตั้งค่านี้ให้มากกว่าค่าของ --jobs จะไม่มีผล

แท็ก execution

--[no]test_keep_going ค่าเริ่มต้น: "จริง"

เมื่อปิดใช้ การทดสอบที่ไม่ผ่านจะทำให้บิลด์ทั้งหมดหยุดทำงาน โดยค่าเริ่มต้น ระบบจะเรียกใช้การทดสอบทั้งหมด แม้ว่าการทดสอบบางรายการจะไม่ผ่านก็ตาม

แท็ก execution

--test_strategy=<a string> ค่าเริ่มต้น: ""

ระบุกลยุทธ์ที่จะใช้เมื่อทำการทดสอบ

แท็ก execution

--test_tmpdir=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไดเรกทอรีชั่วคราวฐานสำหรับ "bazel test" ที่จะใช้

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--cache_computed_file_digests=<a long integer> ค่าเริ่มต้น: "50000"

หากมากกว่า 0 จะกำหนดค่า Bazel ให้แคชแฮชของไฟล์ในหน่วยความจำตามข้อมูลเมตาแทนที่จะคำนวณแฮชจากดิสก์ใหม่ทุกครั้งที่จำเป็น การตั้งค่านี้เป็น 0 จะช่วยให้มั่นใจได้ถึงความถูกต้อง เนื่องจากระบบไม่สามารถบันทึกการเปลี่ยนแปลงไฟล์ทั้งหมดจากข้อมูลเมตาของไฟล์ได้ หากไม่ใช่ 0 ตัวเลขนี้จะระบุขนาดของแคชเป็นจำนวนแฮชของไฟล์ที่จะแคช

--experimental_active_directories=<comma-separated list of options> ค่าเริ่มต้น: ""

Active Directory สำหรับการแคช Skyfocus และการวิเคราะห์ระยะไกล ระบุเป็นเส้นทางแบบสัมพัทธ์ของรูทพื้นที่ทำงานที่คั่นด้วยคอมมา นี่คือฟีเจอร์ที่เก็บสถานะ การกำหนดค่าหนึ่งจะคงอยู่สำหรับการเรียกใช้ครั้งต่อๆ ไป จนกว่าจะมีการกำหนดใหม่ด้วยชุดใหม่

แท็ก host_machine_resource_optimizations

--[no]experimental_cpu_load_scheduling ค่าเริ่มต้น: "false"

เปิดใช้การจัดกำหนดการการดำเนินการในเครื่องแบบทดลองโดยอิงตามภาระงานของ CPU ไม่ใช่การประมาณการดำเนินการทีละรายการ การจัดกำหนดการทดลองแสดงให้เห็นถึงประโยชน์อย่างมากในการสร้างในเครื่องขนาดใหญ่บนเครื่องที่มีประสิทธิภาพซึ่งมีจำนวนคอร์มาก แนะนำให้ใช้กับ --local_resources=cpu=HOST_CPUS

แท็ก execution

--experimental_dynamic_ignore_local_signals=<a comma-separated list of signal numbers> ค่าเริ่มต้น: ดูคำอธิบาย

รับรายการหมายเลขสัญญาณของระบบปฏิบัติการ หากสาขาในเครื่องของการดำเนินการแบบไดนามิกถูกปิดด้วยสัญญาณเหล่านี้ สาขาที่อยู่ระยะไกลจะได้รับอนุญาตให้ดำเนินการต่อแทน สำหรับ Worker ที่ทำงานอย่างต่อเนื่อง การดำเนินการนี้จะส่งผลต่อสัญญาณที่หยุดกระบวนการ Worker เท่านั้น

แท็ก execution

--[no]experimental_enable_skyfocus ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ --experimental_active_directories เพื่อลดการใช้หน่วยความจำของ Bazel สำหรับการสร้างแบบเพิ่ม ฟีเจอร์นี้เรียกว่า Skyfocus

แท็ก host_machine_resource_optimizations

--local_cpu_resources=<an integer, or "HOST_CPUS", optionally followed by [-|*]<float>.> ค่าเริ่มต้น: "HOST_CPUS"

ตั้งค่าจำนวนแกน CPU ในเครื่องทั้งหมดที่ Bazel ใช้ได้อย่างชัดเจนเพื่อใช้กับบิลด์แอ็กชันที่ดำเนินการในเครื่อง รับจำนวนเต็มหรือ "HOST_CPUS" ตามด้วย [-|]<float> (เช่น HOST_CPUS.5 เพื่อใช้ครึ่งหนึ่งของ CPU Core ที่พร้อมใช้งาน) โดยค่าเริ่มต้น ("HOST_CPUS") Bazel จะค้นหาการกำหนดค่าระบบเพื่อประมาณจำนวนแกน CPU ที่พร้อมใช้งาน

แท็ก host_machine_resource_optimizations

--local_extra_resources=<a named float, 'name=value'> มีการสะสมการใช้งานหลายครั้ง

ตั้งค่าจำนวนทรัพยากรเพิ่มเติมที่ Bazel ใช้ได้ รับคู่สตริง-โฟลต ใช้ได้หลายครั้งเพื่อระบุแหล่งข้อมูลเพิ่มเติมหลายประเภท Bazel จะจำกัดการดำเนินการที่ทำงานพร้อมกันโดยอิงตามทรัพยากรเพิ่มเติมที่มีและทรัพยากรเพิ่มเติมที่จำเป็น การทดสอบสามารถประกาศจำนวนทรัพยากรเพิ่มเติมที่ต้องการได้โดยใช้แท็กในรูปแบบ "resources:<resoucename>:<amount>" ตั้งค่า CPU, RAM และทรัพยากรที่พร้อมใช้งานด้วยแฟล็กนี้ไม่ได้

แท็ก host_machine_resource_optimizations

--local_ram_resources=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> ค่าเริ่มต้น: "HOST_RAM*.67"

ตั้งค่าจำนวน RAM ของโฮสต์ในเครื่องทั้งหมด (เป็น MB) ที่ Bazel ใช้ได้อย่างชัดเจนเพื่อใช้ในการดำเนินการบิลด์ที่ดำเนินการในเครื่อง รับจำนวนเต็มหรือ "HOST_RAM" ตามด้วย [-|]<float> (เช่น HOST_RAM.5 เพื่อใช้ RAM ครึ่งหนึ่งของ RAM ที่มี) โดยค่าเริ่มต้น ("HOST_RAM*.67") Bazel จะค้นหาการกำหนดค่าระบบเพื่อประมาณปริมาณ RAM ที่พร้อมใช้งานและจะใช้ 67% ของ RAM นั้น

แท็ก 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"> มีการสะสมการใช้งานหลายครั้ง

ตั้งค่าจำนวนทรัพยากรที่ Bazel ใช้ได้ รับการกำหนดค่าเป็นจำนวนทศนิยมหรือ HOST_RAM/HOST_CPUS โดยอาจตามด้วย [-|]<float> (เช่น memory=HOST_RAM.5 เพื่อใช้ RAM ที่พร้อมใช้งานครึ่งหนึ่ง) ใช้ได้หลายครั้งเพื่อระบุทรัพยากรหลายประเภท Bazel จะจำกัดการดำเนินการที่ทำงานพร้อมกันตามทรัพยากรที่มีและทรัพยากรที่จำเป็น การทดสอบสามารถประกาศจำนวนทรัพยากรที่ต้องการได้โดยใช้แท็กในรูปแบบ "resources:<resource name>:<amount>" ลบล้างทรัพยากรที่ระบุโดย --local_{cpu|ram|extra}_resources

แท็ก host_machine_resource_optimizations

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--build_event_upload_max_retries=<an integer> ค่าเริ่มต้น: "4"

จำนวนครั้งสูงสุดที่ Bazel ควรลองอัปโหลดเหตุการณ์บิลด์ซ้ำ

แท็ก bazel_internal_configuration

--[no]debug_spawn_scheduler ค่าเริ่มต้น: "false"
--[no]experimental_bep_target_summary ค่าเริ่มต้น: "false"

จะเผยแพร่เหตุการณ์ TargetSummary หรือไม่

--[no]experimental_build_event_expand_filesets ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ขยายชุดไฟล์ใน BEP เมื่อนำเสนอไฟล์เอาต์พุต

แท็ก affects_outputs

--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both> มีการสะสมการใช้งานหลายครั้ง

ระบุวิธีแสดงไฟล์ของกลุ่มเอาต์พุตในเหตุการณ์ BEP ของ TargetComplete/AspectComplete ค่าคือการกำหนดชื่อกลุ่มเอาต์พุตให้กับ "NAMED_SET_OF_FILES_ONLY", "INLINE_ONLY" หรือ "BOTH" อย่างใดอย่างหนึ่ง ค่าเริ่มต้นคือ "NAMED_SET_OF_FILES_ONLY" หากมีการทำซ้ำกลุ่มเอาต์พุต ระบบจะใช้ค่าสุดท้ายที่จะปรากฏ ค่าเริ่มต้นจะตั้งค่าโหมดสำหรับอาร์ติแฟกต์ความครอบคลุมเป็น BOTH: --experimental_build_event_output_group_mode=baseline.lcov=both

แท็ก affects_outputs

--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> ค่าเริ่มต้น: "1s"

การหน่วงเวลาเริ่มต้นขั้นต่ำสำหรับการลองใหม่แบบ Exponential Backoff เมื่อการอัปโหลด BEP ล้มเหลว (เลขยกกำลัง: 1.6)

แท็ก bazel_internal_configuration

--experimental_build_event_upload_strategy=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เลือกวิธีอัปโหลดอาร์ติแฟกต์ที่อ้างอิงในโปรโตคอลเหตุการณ์บิลด์ ใน Bazel ตัวเลือกที่ถูกต้อง ได้แก่ "local" และ "remote" ค่าเริ่มต้นคือ "local"

แท็ก affects_outputs

--[no]experimental_docker_verbose ค่าเริ่มต้น: "false"

หากเปิดใช้ Bazel จะพิมพ์ข้อความแบบละเอียดเพิ่มเติมเกี่ยวกับกลยุทธ์แซนด์บ็อกซ์ Docker

แท็ก execution

--experimental_frontier_violation_check=<strict, warn or disabled_for_testing> ค่าเริ่มต้น: "เข้มงวด"

กลยุทธ์ในการจัดการความไม่ถูกต้องที่อาจเกิดขึ้นจากการเปลี่ยนแปลงที่อยู่นอกขอบเขต (เช่น นอกไดเรกทอรีที่ใช้งานอยู่)

แท็ก eagerness_to_exit

--[no]experimental_frontier_violation_verbose ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะพิมพ์วิธีการแก้ไขการละเมิด Skycache

แท็ก terminal_output

--[no]experimental_materialize_param_files_directly ค่าเริ่มต้น: "false"

หากจะสร้างไฟล์พารามิเตอร์ ให้เขียนลงในดิสก์โดยตรง

แท็ก execution

--[no]experimental_run_bep_event_include_residue ค่าเริ่มต้น: "false"

จะรวมส่วนที่เหลือของบรรทัดคำสั่งในเหตุการณ์การสร้างการเรียกใช้ซึ่งอาจมีส่วนที่เหลือหรือไม่ โดยค่าเริ่มต้น ระบบจะไม่รวมสารตกค้างไว้ในเหตุการณ์การสร้างคำสั่งเรียกใช้ที่อาจมีสารตกค้าง

แท็ก affects_outputs

--experimental_skyfocus_dump_keys=<none, count or verbose> ค่าเริ่มต้น: "ไม่มี"

สำหรับการแก้ไขข้อบกพร่องของ Skyfocus ทิ้ง SkyKeys ที่โฟกัส (ราก ใบไม้ การขึ้นต่อกันที่โฟกัส การขึ้นต่อกันย้อนกลับที่โฟกัส)

แท็ก terminal_output

--[no]experimental_skyfocus_dump_post_gc_stats ค่าเริ่มต้น: "false"

สำหรับการแก้ไขข้อบกพร่องของ Skyfocus หากเปิดใช้ ให้ทริกเกอร์ GC ด้วยตนเองก่อน/หลังการโฟกัสเพื่อรายงานการลดขนาดฮีป ซึ่งจะเพิ่มเวลาในการตอบสนองของ Skyfocus

แท็ก terminal_output

--[no]experimental_stream_log_file_uploads ค่าเริ่มต้น: "false"

สตรีมการอัปโหลดไฟล์บันทึกไปยังพื้นที่เก็บข้อมูลระยะไกลโดยตรงแทนที่จะเขียนลงในดิสก์

แท็ก affects_outputs

--explain=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

ทำให้ระบบบิลด์อธิบายแต่ละขั้นตอนที่ดำเนินการของบิลด์ ระบบจะเขียนคำอธิบายลงในไฟล์บันทึกที่ระบุ

แท็ก affects_outputs

--[no]ignore_unsupported_sandboxing ค่าเริ่มต้น: "false"

อย่าพิมพ์คำเตือนเมื่อระบบนี้ไม่รองรับการดำเนินการในแซนด์บ็อกซ์

แท็ก terminal_output

--[no]legacy_important_outputs ค่าเริ่มต้น: "false"

ใช้ตัวเลือกนี้เพื่อระงับการสร้างฟิลด์ important_outputs เดิมในเหตุการณ์ TargetComplete จำเป็นต้องมี important_outputs เพื่อให้ Bazel ผสานรวมกับ ResultStore/BTX

แท็ก affects_outputs

--[no]materialize_param_files ค่าเริ่มต้น: "false"

เขียนไฟล์พารามิเตอร์ระดับกลางไปยังโครงสร้างเอาต์พุตแม้ว่าจะใช้การดำเนินการหรือการแคชการดำเนินการระยะไกลก็ตาม มีประโยชน์เมื่อแก้ไขข้อบกพร่องของการดำเนินการ ซึ่งจะแสดงโดย --subcommands และ --verbose_failures

แท็ก execution

--max_config_changes_to_show=<an integer> ค่าเริ่มต้น: "3"

เมื่อทิ้งแคชการวิเคราะห์เนื่องจากการเปลี่ยนแปลงตัวเลือกบิลด์ จะแสดงชื่อตัวเลือกที่เปลี่ยนแปลงสูงสุดตามจำนวนที่ระบุ หากระบุหมายเลขเป็น -1 ระบบจะแสดงตัวเลือกที่เปลี่ยนแปลงทั้งหมด

แท็ก terminal_output

--max_test_output_bytes=<an integer> ค่าเริ่มต้น: "-1"

ระบุขนาดสูงสุดของบันทึกต่อการทดสอบที่สามารถปล่อยออกมาได้เมื่อ --test_output เป็น "errors" หรือ "all" มีประโยชน์ในการหลีกเลี่ยงการทำให้เอาต์พุตมีเสียงรบกวนมากเกินไปจากเอาต์พุตการทดสอบ ส่วนหัวของการทดสอบจะรวมอยู่ในขนาดบันทึก ค่าลบหมายถึงไม่มีขีดจำกัด เอาต์พุตจะเป็นทั้งหมดหรือไม่มีเลย

แท็ก test_runner, terminal_output, execution

--output_filter=<a valid Java regular expression> ค่าเริ่มต้น: ดูคำอธิบาย

แสดงเฉพาะคำเตือนและเอาต์พุตการดำเนินการสำหรับกฎที่มีชื่อตรงกับนิพจน์ทั่วไปที่ระบุ

แท็ก affects_outputs

--progress_report_interval=<an integer in 0-3600 range> ค่าเริ่มต้น: "0"

จำนวนวินาทีที่จะรอระหว่างรายงานเกี่ยวกับงานที่ยังทำงานอยู่ ค่าเริ่มต้น 0 หมายความว่าระบบจะพิมพ์รายงานแรกหลังจากผ่านไป 10 วินาที จากนั้น 30 วินาที และหลังจากนั้นจะรายงานความคืบหน้าทุกๆ 1 นาที เมื่อเปิดใช้ --curses ระบบจะรายงานความคืบหน้าทุกวินาที

แท็ก affects_outputs

--remote_analysis_json_log=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ ระบบจะเขียนไฟล์ JSON ไปยังตำแหน่งนี้ซึ่งมีบันทึกโดยละเอียดเกี่ยวกับลักษณะการทำงานของการแคชการวิเคราะห์ระยะไกล ระบบจะตีความว่าเป็นเส้นทางที่สัมพันธ์กับไดเรกทอรีที่ใช้งานในปัจจุบัน

แท็ก bazel_monitoring

--remote_print_execution_messages=<failure, success or all> ค่าเริ่มต้น: "failure"

เลือกเวลาที่จะพิมพ์ข้อความการดำเนินการจากระยะไกล ค่าที่ถูกต้องคือ failure สำหรับพิมพ์เฉพาะเมื่อล้มเหลว success สำหรับพิมพ์เฉพาะเมื่อสำเร็จ และ all สำหรับพิมพ์เสมอ

แท็ก terminal_output

--[no]sandbox_debug ค่าเริ่มต้น: "false"

เปิดใช้ฟีเจอร์การแก้ไขข้อบกพร่องสำหรับฟีเจอร์แซนด์บ็อกซ์ ซึ่งรวมถึง 2 สิ่ง ได้แก่ ประการแรก เนื้อหาของรูทแซนด์บ็อกซ์จะยังคงเหมือนเดิมหลังจากสร้าง และประการที่สอง จะพิมพ์ข้อมูลการแก้ไขข้อบกพร่องเพิ่มเติมในการดำเนินการ ซึ่งจะช่วยนักพัฒนาที่ใช้กฎ Bazel หรือ Starlark ในการแก้ไขข้อบกพร่องที่เกิดจากไฟล์อินพุตที่ขาดหายไป เป็นต้น

แท็ก terminal_output

--show_result=<an integer> ค่าเริ่มต้น: "1"

แสดงผลลัพธ์ของการสร้าง สำหรับแต่ละเป้าหมาย ให้ระบุว่ามีการอัปเดตหรือไม่ และหากมีการอัปเดต ให้ระบุรายการไฟล์เอาต์พุตที่สร้างขึ้น ไฟล์ที่พิมพ์ออกมาจะเป็นสตริงที่สะดวกสำหรับการคัดลอกและวางลงในเชลล์เพื่อเรียกใช้ ตัวเลือกนี้ต้องมีอาร์กิวเมนต์จำนวนเต็ม ซึ่งเป็นจำนวนเป้าหมายขั้นต่ำที่ระบบจะไม่พิมพ์ข้อมูลผลลัพธ์ ดังนั้น 0 จะทำให้ระบบระงับข้อความและ MAX_INT จะทำให้ระบบพิมพ์ผลลัพธ์เสมอ ค่าเริ่มต้นคือ 1 หากไม่ได้สร้างอะไรสำหรับเป้าหมาย ระบบอาจละเว้นผลลัพธ์ของเป้าหมายนั้นเพื่อให้เอาต์พุตอยู่ภายใต้เกณฑ์

แท็ก affects_outputs

--[no]subcommands [-s] ค่าเริ่มต้น: "false"

แสดงคำสั่งย่อยที่ดำเนินการระหว่างการสร้าง แฟล็กที่เกี่ยวข้อง: --execution_log_json_file, --execution_log_binary_file (สำหรับการบันทึกคำสั่งย่อยลงในไฟล์ในรูปแบบที่เหมาะกับเครื่องมือ)

แท็ก terminal_output

--test_output=<summary, errors, all or streamed> ค่าเริ่มต้น: "summary"

ระบุโหมดเอาต์พุตที่ต้องการ ค่าที่ใช้ได้คือ "summary" เพื่อแสดงผลเฉพาะสรุปสถานะการทดสอบ, "errors" เพื่อพิมพ์บันทึกการทดสอบสำหรับการทดสอบที่ไม่สำเร็จด้วย, "all" เพื่อพิมพ์บันทึกสำหรับการทดสอบทั้งหมด และ "streamed" เพื่อแสดงผลบันทึกสำหรับการทดสอบทั้งหมดแบบเรียลไทม์ (การดำเนินการนี้จะบังคับให้ทดสอบในเครื่องทีละรายการโดยไม่คำนึงถึงค่า --test_strategy)

แท็ก test_runner, terminal_output, execution

--test_summary=<short, terse, detailed, none or testcase> ค่าเริ่มต้น: "short"

ระบุรูปแบบที่ต้องการของข้อมูลสรุปการทดสอบ ค่าที่ใช้ได้คือ "short" เพื่อพิมพ์ข้อมูลเกี่ยวกับการทดสอบที่ดำเนินการเท่านั้น, "terse" เพื่อพิมพ์ข้อมูลเกี่ยวกับการทดสอบที่ไม่สําเร็จที่เรียกใช้เท่านั้น, "detailed" เพื่อพิมพ์ข้อมูลโดยละเอียดเกี่ยวกับกรณีทดสอบที่ไม่สําเร็จ, "testcase" เพื่อพิมพ์สรุปในการแก้ไขกรณีทดสอบ, ไม่พิมพ์ข้อมูลโดยละเอียดเกี่ยวกับกรณีทดสอบที่ไม่สําเร็จ และ "none" เพื่อละเว้นสรุป

แท็ก terminal_output

--[no]verbose_failures ค่าเริ่มต้น: "false"

หากคำสั่งล้มเหลว ให้พิมพ์บรรทัดคำสั่งแบบเต็ม

แท็ก terminal_output

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--aspects_parameters=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุค่าของพารามิเตอร์ด้านบรรทัดคำสั่ง ค่าพารามิเตอร์แต่ละค่าจะระบุผ่าน <param_name>=<param_value> เช่น "my_param=my_val" โดยที่ "my_param" เป็นพารามิเตอร์ของลักษณะบางอย่างในรายการ --aspects หรือต้องระบุโดยลักษณะในรายการ ตัวเลือกนี้ใช้ได้หลายครั้ง อย่างไรก็ตาม คุณไม่สามารถกำหนดค่าให้กับพารามิเตอร์เดียวกันมากกว่า 1 ครั้ง

แท็ก loading_and_analysis

--target_pattern_file=<a string> ค่าเริ่มต้น: ""

หากตั้งค่าไว้ บิลด์จะอ่านรูปแบบจากไฟล์ที่ระบุชื่อไว้ที่นี่แทนที่จะอ่านจากบรรทัดคำสั่ง การระบุไฟล์ที่นี่และรูปแบบบรรทัดคำสั่งถือเป็นข้อผิดพลาด

แท็ก changes_inputs

ตัวเลือกการแคชและการดำเนินการจากระยะไกล
--experimental_circuit_breaker_strategy=<failure> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุกลยุทธ์ที่เบรกเกอร์วงจรจะใช้ กลยุทธ์ที่ใช้ได้คือ "failure" หากค่าของตัวเลือกไม่ถูกต้อง ลักษณะการทำงานจะเหมือนกับไม่ได้ตั้งค่าตัวเลือก

แท็ก execution

--experimental_remote_cache_compression_threshold=<an integer> ค่าเริ่มต้น: "100"

ขนาด Blob ขั้นต่ำที่จำเป็นในการบีบอัด/คลายการบีบอัดด้วย zstd จะไม่มีผลเว้นแต่จะตั้งค่า --remote_cache_compression

--experimental_remote_cache_eviction_retries=<an integer> ค่าเริ่มต้น: "5"

จำนวนครั้งสูงสุดที่พยายามอีกครั้งหากบิลด์พบข้อผิดพลาดชั่วคราวของแคชระยะไกลซึ่งจะทำให้บิลด์ล้มเหลว เช่น เมื่อมีการนำอาร์ติแฟกต์ออกจากแคชระยะไกล หรือในกรณีที่แคชล้มเหลวบางอย่าง ระบบจะสร้างรหัสการเรียกใช้ใหม่สําหรับแต่ละความพยายาม

แท็ก execution

--[no]experimental_remote_cache_lease_extension ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" Bazel จะขยายสัญญาเช่าสำหรับเอาต์พุตของการดำเนินการระยะไกลระหว่างการสร้างโดยการส่งการเรียกใช้ FindMissingBlobs เป็นระยะไปยังแคชระยะไกล ความถี่จะอิงตามค่าของ --experimental_remote_cache_ttl

--experimental_remote_cache_ttl=<An immutable length of time.> ค่าเริ่มต้น: "3h"

TTL ขั้นต่ำที่รับประกันของ Blob ในแคชระยะไกลหลังจากที่มีการอ้างอิง Digest ของ Blob นั้นล่าสุด เช่น โดย ActionResult หรือ FindMissingBlobs Bazel ทำการเพิ่มประสิทธิภาพหลายอย่างตาม TTL ของ Blob เช่น ไม่เรียกใช้ GetActionResult ซ้ำๆ ในการสร้างแบบเพิ่ม ควรตั้งค่าให้ต่ำกว่า TTL จริงเล็กน้อย เนื่องจากมีช่องว่างระหว่างเวลาที่เซิร์ฟเวอร์ส่งคืนข้อมูลสรุปกับเวลาที่ Bazel ได้รับข้อมูลสรุป

แท็ก execution

--experimental_remote_capture_corrupted_outputs=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางไปยังไดเรกทอรีที่จะบันทึกเอาต์พุตที่เสียหาย

--[no]experimental_remote_discard_merkle_trees ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น true ให้ทิ้งสำเนาในหน่วยความจำของต้นไม้ Merkle ของรูทอินพุตและการแมปอินพุตที่เชื่อมโยงระหว่างการเรียก GetActionResult() และ Execute() ซึ่งจะช่วยลดการใช้หน่วยความจำได้อย่างมาก แต่ต้องให้ Bazel คำนวณใหม่เมื่อแคชระยะไกลไม่พบและมีการลองใหม่

--experimental_remote_downloader=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

URI ของปลายทาง Remote Asset API ที่จะใช้เป็นพร็อกซีการดาวน์โหลดจากระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ดูที่ https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto

--[no]experimental_remote_downloader_local_fallback ค่าเริ่มต้น: "false"

จะกลับไปใช้โปรแกรมดาวน์โหลดในเครื่องหรือไม่หากโปรแกรมดาวน์โหลดระยะไกลล้มเหลว

--[no]experimental_remote_downloader_propagate_credentials ค่าเริ่มต้น: "false"

จะส่งต่อข้อมูลเข้าสู่ระบบจาก netrc และโปรแกรมช่วยจัดการข้อมูลเข้าสู่ระบบไปยังเซิร์ฟเวอร์ดาวน์โหลดระยะไกลหรือไม่ การติดตั้งใช้งานเซิร์ฟเวอร์ต้องรองรับตัวระบุ http_header_url:&lt;url-index&gt;:&lt;header-key&gt; ใหม่ โดยที่ &lt;url-index&gt; คือตำแหน่งแบบ 0 ของ URL ภายในฟิลด์ uris ของ FetchBlobRequest ส่วนหัวที่เฉพาะเจาะจง URL ควรมีความสำคัญสูงกว่าส่วนหัวทั่วไป

--[no]experimental_remote_execution_keepalive ค่าเริ่มต้น: "false"

ว่าจะใช้ Keepalive สำหรับการเรียกใช้การดำเนินการจากระยะไกลหรือไม่

--experimental_remote_failure_rate_threshold=<an integer in 0-100 range> ค่าเริ่มต้น: "10"

กำหนดจำนวนอัตราความล้มเหลวที่อนุญาตเป็นเปอร์เซ็นต์สำหรับกรอบเวลาที่เฉพาะเจาะจง หลังจากนั้นระบบจะหยุดเรียกแคช/ตัวดำเนินการระยะไกล โดยค่าเริ่มต้น ค่านี้จะเป็น 10 การตั้งค่านี้เป็น 0 หมายความว่าไม่มีข้อจำกัด

แท็ก execution

--experimental_remote_failure_window_interval=<An immutable length of time.> ค่าเริ่มต้น: "60s"

ช่วงเวลาที่ใช้ในการคำนวณอัตราความล้มเหลวของคำขอระยะไกล หากค่าเป็น 0 หรือค่าลบ ระบบจะคำนวณระยะเวลาที่ล้มเหลวตลอดระยะเวลาการดำเนินการทั้งหมด คุณสามารถใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

แท็ก execution

--[no]experimental_remote_mark_tool_inputs ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" Bazel จะทำเครื่องหมายอินพุตเป็นอินพุตเครื่องมือสำหรับตัวดำเนินการระยะไกล ซึ่งใช้เพื่อติดตั้งใช้งาน Worker แบบถาวรระยะไกลได้

--[no]experimental_remote_merkle_tree_cache ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ระบบจะบันทึกการคำนวณต้นไม้ Merkle เพื่อปรับปรุงความเร็วในการตรวจสอบการเข้าชมแคชระยะไกล ระบบจะควบคุมปริมาณหน่วยความจำของแคชโดยใช้ --experimental_remote_merkle_tree_cache_size

--experimental_remote_merkle_tree_cache_size=<a long integer> ค่าเริ่มต้น: "1000"

จำนวนต้นไม้ Merkle ที่จะบันทึกเพื่อปรับปรุงความเร็วในการตรวจสอบการเข้าชมแคชระยะไกล แม้ว่าระบบจะล้างแคชโดยอัตโนมัติตามการจัดการการอ้างอิงแบบอ่อนของ Java แต่ข้อผิดพลาดหน่วยความจำไม่เพียงพออาจเกิดขึ้นได้หากตั้งค่าสูงเกินไป หากตั้งค่าเป็น 0 ระบบจะไม่จำกัดขนาดแคช ค่าที่เหมาะสมจะแตกต่างกันไปตามขนาดของโปรเจ็กต์ ค่าเริ่มต้นคือ 1,000

--experimental_remote_output_service=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

HOST หรือ HOST:PORT ของปลายทางบริการเอาต์พุตระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc:// หรือ unix: เพื่อปิดใช้ TLS

--experimental_remote_output_service_output_path_prefix=<a string> ค่าเริ่มต้น: ""

เส้นทางที่วางเนื้อหาของไดเรกทอรีเอาต์พุตซึ่งจัดการโดย --experimental_remote_output_service ไดเรกทอรีเอาต์พุตจริงที่บิลด์ใช้จะเป็นไดเรกทอรีย่อยของเส้นทางนี้และกำหนดโดยบริการเอาต์พุต

--[no]experimental_remote_require_cached ค่าเริ่มต้น: "false"

หากตั้งค่าเป็น "จริง" ให้บังคับแคชการดำเนินการทั้งหมดที่เรียกใช้จากระยะไกลได้ หรือไม่เช่นนั้นจะทำให้บิลด์ล้มเหลว ซึ่งจะเป็นประโยชน์ในการแก้ปัญหาเกี่ยวกับความไม่แน่นอน เนื่องจากช่วยให้ตรวจสอบได้ว่าการดำเนินการที่ควรแคชนั้นแคชจริงหรือไม่ โดยไม่ต้องแทรกผลลัพธ์ใหม่ที่ไม่เกี่ยวข้องลงในแคช

--experimental_remote_scrubbing_config=<Converts to a Scrubber> ค่าเริ่มต้น: ดูคำอธิบาย

เปิดใช้การล้างคีย์แคชระยะไกลด้วยไฟล์การกำหนดค่าที่ระบุ ซึ่งต้องเป็นบัฟเฟอร์โปรโตคอลในรูปแบบข้อความ (ดู src/main/protobuf/remote_scrubbing.proto)

ฟีเจอร์นี้มีไว้เพื่ออำนวยความสะดวกในการแชร์แคชระยะไกล/ดิสก์ระหว่างการดำเนินการที่ทำงานบนแพลตฟอร์มต่างๆ แต่กำหนดเป้าหมายไปยังแพลตฟอร์มเดียวกัน ควรใช้อย่างระมัดระวังเป็นอย่างยิ่ง เนื่องจากหากตั้งค่าไม่เหมาะสมอาจทำให้มีการแชร์รายการในแคชโดยไม่ตั้งใจและทำให้บิลด์ไม่ถูกต้อง

การกรอจะไม่ส่งผลต่อวิธีดำเนินการ แต่จะส่งผลต่อวิธีคำนวณคีย์แคชระยะไกล/ดิสก์เพื่อวัตถุประสงค์ในการเรียกข้อมูลหรือจัดเก็บผลลัพธ์ของการดำเนินการเท่านั้น การดำเนินการที่ลบออกใช้ร่วมกับการดำเนินการจากระยะไกลไม่ได้ และจะดำเนินการในเครื่องเสมอ

การแก้ไขการกำหนดค่าการกวาดล้างจะไม่ทำให้เอาต์พุตที่อยู่ในระบบไฟล์ในเครื่องหรือแคชภายในไม่ถูกต้อง คุณจะต้องสร้างคลีนบิลด์เพื่อดำเนินการที่ได้รับผลกระทบอีกครั้ง

หากต้องการใช้ฟีเจอร์นี้ให้สำเร็จ คุณอาจต้องตั้งค่า --host_platform ที่กำหนดเองพร้อมกับ --experimental_platform_in_output_dir (เพื่อทำให้คำนำหน้าเอาต์พุตเป็นมาตรฐาน) และ --incompatible_strict_action_env (เพื่อทำให้ตัวแปรสภาพแวดล้อมเป็นมาตรฐาน)

--[no]guard_against_concurrent_changes ค่าเริ่มต้น: "lite"

ตั้งค่าเป็น "full" เพื่อเปิดใช้การตรวจสอบ ctime ของไฟล์อินพุตทั้งหมดของการดำเนินการก่อนอัปโหลดไปยังแคชระยะไกล อาจมีกรณีที่เคอร์เนล Linux หน่วงเวลาการเขียนไฟล์ ซึ่งอาจทำให้เกิดผลบวกเท็จ ค่าเริ่มต้นคือ "lite" ซึ่งจะตรวจสอบเฉพาะไฟล์ต้นฉบับในที่เก็บหลัก การตั้งค่านี้เป็น "ปิด" จะเป็นการปิดใช้การตรวจสอบทั้งหมด เราไม่แนะนำให้ทำเช่นนี้ เนื่องจากแคชอาจเสียหายเมื่อมีการเปลี่ยนแปลงไฟล์ต้นฉบับขณะที่การดำเนินการที่ใช้ไฟล์ดังกล่าวเป็นอินพุตกำลังทำงานอยู่

แท็ก execution

--[no]remote_accept_cached ค่าเริ่มต้น: "จริง"

ว่าจะยอมรับผลการดำเนินการที่แคชไว้จากระยะไกลหรือไม่

--remote_build_event_upload=<all or minimal> ค่าเริ่มต้น: "น้อยที่สุด"

หากตั้งค่าเป็น "all" ระบบจะอัปโหลดเอาต์พุตในเครื่องทั้งหมดที่ BEP อ้างอิงไปยังแคชระยะไกล หากตั้งค่าเป็น "น้อยที่สุด" ระบบจะไม่โหลดเอาต์พุตในเครื่องที่ BEP อ้างอิงไปยังแคชระยะไกล ยกเว้นไฟล์ที่สำคัญต่อผู้ใช้ BEP (เช่น บันทึกการทดสอบและโปรไฟล์เวลา) ระบบจะใช้รูปแบบ bytestream:// สำหรับ URI ของไฟล์เสมอแม้ว่าจะไม่มีไฟล์ในแคชระยะไกลก็ตาม ค่าเริ่มต้นคือ "น้อยที่สุด"

--remote_bytestream_uri_prefix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อโฮสต์และชื่ออินสแตนซ์ที่จะใช้ใน URI ของ bytestream:// ที่เขียนลงในสตรีมเหตุการณ์การสร้าง คุณตั้งค่าตัวเลือกนี้ได้เมื่อทำการบิลด์โดยใช้พร็อกซี ซึ่งจะทำให้ค่าของ --remote_executor และ --remote_instance_name ไม่สอดคล้องกับชื่อที่แน่นอนของบริการการดำเนินการจากระยะไกลอีกต่อไป หากไม่ได้ตั้งค่าไว้ ค่าเริ่มต้นจะเป็น "${hostname}/${instance_name}"

--remote_cache=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

URI ของปลายทางการแคช สคีมาที่รองรับ ได้แก่ http, https, grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc://, http:// หรือ unix: เพื่อปิดใช้ TLS ดู https://bazel.build/remote/caching

--[no]remote_cache_async ค่าเริ่มต้น: "จริง"

หากเป็น "จริง" การอัปโหลดผลลัพธ์ของการดำเนินการไปยังแคชในดิสก์หรือแคชระยะไกลจะเกิดขึ้นในเบื้องหลังแทนที่จะบล็อกการดำเนินการให้เสร็จสมบูรณ์ การดำเนินการบางอย่างไม่สามารถใช้ร่วมกับการอัปโหลดในเบื้องหลังได้ และอาจยังคงบล็อกแม้ว่าจะตั้งค่าสถานะนี้แล้วก็ตาม

--[no]remote_cache_compression ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้บีบอัด/คลายการบีบอัด Blob ของแคชด้วย zstd เมื่อมีขนาดอย่างน้อย --experimental_remote_cache_compression_threshold

--remote_cache_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอแคช: --remote_cache_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_default_exec_properties=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตั้งค่าพร็อพเพอร์ตี้ exec เริ่มต้นที่จะใช้เป็นแพลตฟอร์มการดำเนินการระยะไกล หากแพลตฟอร์มการดำเนินการยังไม่ได้ตั้งค่า exec_properties

แท็ก affects_outputs

--remote_default_platform_properties=<a string> ค่าเริ่มต้น: ""

ตั้งค่าพร็อพเพอร์ตี้แพลตฟอร์มเริ่มต้นที่จะตั้งค่าสำหรับ Remote Execution API หากแพลตฟอร์มการดำเนินการยังไม่ได้ตั้งค่า remote_execution_properties ระบบจะใช้ค่านี้ด้วยหากเลือกแพลตฟอร์มโฮสต์เป็นแพลตฟอร์มการดำเนินการสำหรับการดำเนินการจากระยะไกล

--remote_download_regex=<a valid Java regular expression> มีการสะสมการใช้งานหลายครั้ง

บังคับให้ดาวน์โหลดเอาต์พุตการสร้างระยะไกลที่มีเส้นทางตรงกับรูปแบบนี้ โดยไม่คำนึงถึง --remote_download_outputs คุณระบุรูปแบบหลายรูปแบบได้โดยใช้แฟล็กนี้ซ้ำ

แท็ก affects_outputs

--remote_downloader_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอโปรแกรมดาวน์โหลดระยะไกล: --remote_downloader_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_exec_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอการดำเนินการ: --remote_exec_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_execution_priority=<an integer> ค่าเริ่มต้น: "0"

ลำดับความสำคัญของการดำเนินการที่จะดำเนินการจากระยะไกล ความหมายของค่าลำดับความสำคัญที่เฉพาะเจาะจงจะขึ้นอยู่กับเซิร์ฟเวอร์

--remote_executor=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

HOST หรือ HOST:PORT ของปลายทางการดำเนินการระยะไกล สคีมาที่รองรับคือ grpc, grpcs (grpc ที่เปิดใช้ TLS) และ unix (ซ็อกเก็ต UNIX ในเครื่อง) หากไม่ได้ระบุสคีมา Bazel จะใช้ grpcs เป็นค่าเริ่มต้น ระบุสคีมา grpc:// หรือ unix: เพื่อปิดใช้ TLS

--remote_grpc_log=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ เส้นทางไปยังไฟล์เพื่อบันทึกรายละเอียดที่เกี่ยวข้องกับการเรียก gRPC บันทึกนี้ประกอบด้วยลำดับของ com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry protobufs ที่ทำให้เป็นอนุกรม โดยมีข้อความแต่ละรายการนำหน้าด้วย varint ที่ระบุขนาดของข้อความ protobuf ที่ทำให้เป็นอนุกรมต่อไปนี้ ตามที่ดำเนินการโดยเมธอด LogEntry.writeDelimitedTo(OutputStream)

--remote_header=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ระบุส่วนหัวที่จะรวมไว้ในคำขอ: --remote_header=Name=Value ส่งส่วนหัวหลายรายการได้โดยระบุแฟล็กหลายครั้ง ระบบจะแปลงค่าหลายค่าสำหรับชื่อเดียวกันเป็นรายการที่คั่นด้วยคอมมา

--remote_instance_name=<a string> ค่าเริ่มต้น: ""

ค่าที่จะส่งเป็น instance_name ใน Remote Execution API

--[no]remote_local_fallback ค่าเริ่มต้น: "false"

ว่าจะกลับไปใช้กลยุทธ์การดำเนินการในเครื่องแบบสแตนด์อโลนหรือไม่ หากการดำเนินการจากระยะไกลล้มเหลว

--remote_local_fallback_strategy=<a string> ค่าเริ่มต้น: "local"

เลิกใช้งานแล้ว ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7480

--remote_max_connections=<an integer> ค่าเริ่มต้น: "100"

จำกัดจำนวนการเชื่อมต่อพร้อมกันสูงสุดกับแคช/ตัวดำเนินการระยะไกล โดยค่าเริ่มต้น ค่านี้จะเป็น 100 การตั้งค่านี้เป็น 0 หมายความว่าไม่มีข้อจำกัด สำหรับแคชระยะไกล HTTP การเชื่อมต่อ TCP 1 รายการจะจัดการคำขอได้ 1 รายการในครั้งเดียว ดังนั้น Bazel จึงสามารถส่งคำขอพร้อมกันได้สูงสุด --remote_max_connections สำหรับแคช/ตัวดำเนินการระยะไกล gRPC โดยปกติแล้วช่อง gRPC 1 ช่องจะจัดการคำขอพร้อมกันได้มากกว่า 100 รายการ ดังนั้น Bazel จึงส่งคำขอพร้อมกันได้ประมาณ --remote_max_connections * 100 รายการ

แท็ก host_machine_resource_optimizations

--remote_proxy=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เชื่อมต่อกับแคชระยะไกลผ่านพร็อกซี ปัจจุบันนี้ คุณใช้แฟล็กนี้ได้เฉพาะในการกำหนดค่า Unix Domain Socket (unix:/path/to/socket)

--remote_result_cache_priority=<an integer> ค่าเริ่มต้น: "0"

ลำดับความสำคัญที่เกี่ยวข้องของการดำเนินการระยะไกลที่จะจัดเก็บไว้ในแคชระยะไกล ความหมายของค่าลำดับความสำคัญที่เฉพาะเจาะจงจะขึ้นอยู่กับเซิร์ฟเวอร์

--remote_retries=<an integer> ค่าเริ่มต้น: "5"

จำนวนครั้งสูงสุดที่พยายามลองใหม่เมื่อเกิดข้อผิดพลาดชั่วคราว หากตั้งค่าเป็น 0 ระบบจะปิดใช้การลองใหม่

--remote_retry_max_delay=<An immutable length of time.> ค่าเริ่มต้น: "5s"

การหน่วงเวลา Backoff สูงสุดระหว่างการลองใหม่จากระยะไกล คุณใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

--remote_timeout=<An immutable length of time.> ค่าเริ่มต้น: "60s"

ระยะเวลาสูงสุดที่จะรอการเรียกใช้ระยะไกลและการเรียกแคช สำหรับแคช REST นี่คือทั้งการเชื่อมต่อและการหมดเวลาในการอ่าน คุณใช้หน่วยต่อไปนี้ได้ วัน (d), ชั่วโมง (h), นาที (m), วินาที (s) และมิลลิวินาที (ms) หากไม่ระบุหน่วย ระบบจะตีความค่าเป็นวินาที

--[no]remote_upload_local_results ค่าเริ่มต้น: "จริง"

ว่าจะอัปโหลดผลลัพธ์ของการดำเนินการที่เรียกใช้ในเครื่องไปยังแคชระยะไกลหรือไม่ หากแคชระยะไกลรองรับและผู้ใช้ได้รับอนุญาตให้ดำเนินการดังกล่าว

--[no]remote_verify_downloads ค่าเริ่มต้น: "จริง"

หากตั้งค่าเป็น true Bazel จะคำนวณผลรวมแฮชของการดาวน์โหลดจากระยะไกลทั้งหมด และทิ้งค่าที่แคชจากระยะไกลหากไม่ตรงกับค่าที่คาดไว้

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]allow_analysis_cache_discard ค่าเริ่มต้น: "จริง"

หากทิ้งแคชการวิเคราะห์เนื่องจากการเปลี่ยนแปลงในระบบบิลด์ การตั้งค่าตัวเลือกนี้เป็นเท็จจะทำให้ Bazel ออกจากระบบแทนที่จะดำเนินการบิลด์ต่อ ตัวเลือกนี้จะไม่มีผลเมื่อตั้งค่า "discard_analysis_cache" ด้วย

แท็ก eagerness_to_exit

--auto_output_filter=<none, all, packages or subpackages> ค่าเริ่มต้น: "ไม่มี"

หากไม่ได้ระบุ --output_filter ระบบจะใช้ค่าสำหรับตัวเลือกนี้เพื่อสร้างตัวกรองโดยอัตโนมัติ ค่าที่อนุญาตคือ "none" (ไม่กรอง / แสดงทุกอย่าง), "all" (กรองทุกอย่าง / ไม่แสดงอะไรเลย), "packages" (รวมเอาต์พุตจากกฎในแพ็กเกจที่ระบุในบรรทัดคำสั่ง Blaze) และ "subpackages" (เช่น "packages" แต่รวมแพ็กเกจย่อยด้วย) สำหรับค่า "แพ็กเกจ" และ "แพ็กเกจย่อย" ระบบจะถือว่า //java/foo และ //javatests/foo เป็นแพ็กเกจเดียวกัน

--[no]build_manual_tests ค่าเริ่มต้น: "false"

บังคับให้สร้างเป้าหมายการทดสอบที่ติดแท็ก "manual" ระบบจะไม่รวมการทดสอบ "ด้วยตนเอง" ในการประมวลผล ตัวเลือกนี้จะบังคับให้สร้าง (แต่ไม่บังคับให้ดำเนินการ)

--build_tag_filters=<comma-separated list of options> ค่าเริ่มต้น: ""

ระบุรายการแท็กที่คั่นด้วยคอมมา คุณจะใส่เครื่องหมาย "-" ไว้หน้าแท็กแต่ละรายการหรือไม่ก็ได้เพื่อระบุแท็กที่ยกเว้น ระบบจะสร้างเฉพาะเป้าหมายที่มีแท็กที่รวมไว้อย่างน้อย 1 รายการและไม่มีแท็กที่ยกเว้น ตัวเลือกนี้ไม่มีผลต่อชุดการทดสอบที่ดำเนินการด้วยคำสั่ง "test" ซึ่งจะควบคุมโดยตัวเลือกการกรองการทดสอบ เช่น "--test_tag_filters"

--[no]build_tests_only ค่าเริ่มต้น: "false"

หากระบุไว้ ระบบจะสร้างเฉพาะกฎ *_test และ test_suite และจะไม่สนใจเป้าหมายอื่นๆ ที่ระบุในบรรทัดคำสั่ง โดยค่าเริ่มต้น ระบบจะสร้างทุกอย่างที่ขอ

--combined_report=<none or lcov> ค่าเริ่มต้น: "lcov"

ระบุประเภทรายงานความครอบคลุมสะสมที่ต้องการ ปัจจุบันรองรับเฉพาะ LCOV

--[no]compile_one_dependency ค่าเริ่มต้น: "false"

รวบรวมการอ้างอิงเดียวของไฟล์อาร์กิวเมนต์ ซึ่งจะเป็นประโยชน์ในการตรวจสอบไวยากรณ์ของไฟล์ต้นฉบับใน IDE เช่น โดยการสร้างเป้าหมายเดียวที่ขึ้นอยู่กับไฟล์ต้นฉบับใหม่เพื่อตรวจหาข้อผิดพลาดให้เร็วที่สุดในวงจรการแก้ไข/การสร้าง/การทดสอบ อาร์กิวเมนต์นี้จะส่งผลต่อวิธีตีความอาร์กิวเมนต์ที่ไม่ใช่แฟล็กทั้งหมด โดยจะเปลี่ยนจากเป้าหมายที่จะสร้างเป็นชื่อไฟล์ต้นฉบับ ระบบจะสร้างเป้าหมายที่กำหนดเองซึ่งขึ้นอยู่กับชื่อไฟล์แหล่งที่มาแต่ละชื่อ

--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]discard_analysis_cache ค่าเริ่มต้น: "false"

ทิ้งแคชการวิเคราะห์ทันทีหลังจากที่ระยะการวิเคราะห์เสร็จสมบูรณ์ ลดการใช้หน่วยความจำลงประมาณ 10% แต่ทำให้บิลด์แบบเพิ่มที่ตามมานั้นช้าลง

--disk_cache=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางไปยังไดเรกทอรีที่ Bazel อ่านและเขียนการดำเนินการและเอาต์พุตของการดำเนินการได้ หากยังไม่มีไดเรกทอรี ระบบจะสร้างให้

--embed_label=<a one-line string> ค่าเริ่มต้น: ""

ฝังการแก้ไขการควบคุมแหล่งที่มาหรือป้ายกำกับรุ่นในไบนารี

--execution_log_binary_file=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

บันทึกการเรียกใช้ที่ดำเนินการแล้วลงในไฟล์นี้เป็น Proto ของ SpawnExec ที่คั่นด้วยความยาวตาม src/main/protobuf/spawn.proto ขอแนะนำให้ใช้ --execution_log_compact_file ซึ่งมีขนาดเล็กกว่ามากและผลิตได้ถูกกว่า แฟล็กที่เกี่ยวข้อง: --execution_log_compact_file (รูปแบบกะทัดรัด; ใช้ร่วมกันไม่ได้), --execution_log_json_file (รูปแบบ JSON ข้อความ; ใช้ร่วมกันไม่ได้), --execution_log_sort (จะจัดเรียงบันทึกการดำเนินการหรือไม่), --subcommands (สำหรับการแสดงคำสั่งย่อยในเอาต์พุตของเทอร์มินัล)

--execution_log_compact_file=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

บันทึกการเรียกใช้ที่ดำเนินการแล้วลงในไฟล์นี้เป็น Proto ของ ExecLogEntry ที่คั่นด้วยความยาวตาม src/main/protobuf/spawn.proto ไฟล์ทั้งหมดได้รับการบีบอัด zstd แฟล็กที่เกี่ยวข้อง: --execution_log_binary_file (รูปแบบ protobuf แบบไบนารี; ใช้ร่วมกันไม่ได้), --execution_log_json_file (รูปแบบ JSON แบบข้อความ; ใช้ร่วมกันไม่ได้), --subcommands (สำหรับการแสดงคำสั่งย่อยในเอาต์พุตของเทอร์มินัล)

--execution_log_json_file=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

บันทึกการเรียกใช้ที่ดำเนินการแล้วลงในไฟล์นี้เป็นตัวแทน JSON ของ SpawnExec protos ที่คั่นด้วยการขึ้นบรรทัดใหม่ตาม src/main/protobuf/spawn.proto ขอแนะนำให้ใช้ --execution_log_compact_file ซึ่งมีขนาดเล็กกว่ามากและผลิตได้ถูกกว่า แฟล็กที่เกี่ยวข้อง: --execution_log_compact_file (รูปแบบกะทัดรัด; ใช้ร่วมกันไม่ได้), --execution_log_binary_file (รูปแบบ Protobuf แบบไบนารี; ใช้ร่วมกันไม่ได้), --execution_log_sort (จะจัดเรียงบันทึกการดำเนินการหรือไม่), --subcommands (สำหรับการแสดงคำสั่งย่อยในเอาต์พุตของเทอร์มินัล)

--[no]execution_log_sort ค่าเริ่มต้น: "จริง"

จะจัดเรียงบันทึกการดำเนินการหรือไม่ เพื่อให้เปรียบเทียบบันทึกในการเรียกใช้ต่างๆ ได้ง่ายขึ้น ตั้งค่าเป็น false เพื่อหลีกเลี่ยงการใช้งาน CPU และหน่วยความจำที่อาจสูงมากเมื่อสิ้นสุดการเรียกใช้ โดยต้องยอมรับการสร้างบันทึกตามลำดับการดำเนินการที่ไม่แน่นอน ใช้ได้กับรูปแบบไบนารีและ JSON เท่านั้น โดยจะไม่มีการจัดเรียงรูปแบบอย่างย่อ

--[no]expand_test_suites ค่าเริ่มต้น: "จริง"

ขยายเป้าหมาย test_suite เป็นการทดสอบที่เป็นส่วนประกอบก่อนการวิเคราะห์ เมื่อเปิดใช้ฟีเจอร์นี้ (ค่าเริ่มต้น) รูปแบบเป้าหมายเชิงลบจะมีผลกับการทดสอบที่อยู่ในชุดการทดสอบ ไม่เช่นนั้นจะไม่มีผล การปิดแฟล็กนี้มีประโยชน์เมื่อใช้แง่มุมระดับบนสุดที่บรรทัดคำสั่ง จากนั้นจะวิเคราะห์เป้าหมาย test_suite ได้

แท็ก loading_and_analysis

--experimental_disk_cache_gc_idle_delay=<An immutable length of time.> ค่าเริ่มต้น: "5m"

ระยะเวลาที่เซิร์ฟเวอร์ต้องไม่ได้ใช้งานก่อนที่จะมีการล้างข้อมูลแคชในดิสก์ หากต้องการระบุนโยบายการเก็บขยะ ให้ตั้งค่า --experimental_disk_cache_gc_max_size และ/หรือ --experimental_disk_cache_gc_max_age

--experimental_disk_cache_gc_max_age=<An immutable length of time.> ค่าเริ่มต้น: "0"

หากตั้งค่าเป็นค่าบวก ระบบจะล้างข้อมูลในแคชดิสก์เป็นระยะๆ เพื่อนำรายการที่เก่ากว่าอายุนี้ออก หากตั้งค่าร่วมกับ --experimental_disk_cache_gc_max_size ระบบจะใช้ทั้ง 2 เกณฑ์ การเก็บขยะจะเกิดขึ้นในเบื้องหลังเมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตามที่กำหนดโดยแฟล็ก --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> ค่าเริ่มต้น: "0"

หากตั้งค่าเป็นค่าบวก ระบบจะทำการล้างข้อมูลที่ไม่ใช้แล้วในแคชของดิสก์เป็นระยะๆ เพื่อให้มีขนาดไม่เกินขนาดนี้ หากตั้งค่าร่วมกับ --experimental_disk_cache_gc_max_age ระบบจะใช้ทั้ง 2 เกณฑ์ การเก็บขยะจะเกิดขึ้นในเบื้องหลังเมื่อเซิร์ฟเวอร์ไม่ได้ใช้งาน ตามที่กำหนดโดยแฟล็ก --experimental_disk_cache_gc_idle_delay

--experimental_extra_action_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: ""

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน กรองชุดเป้าหมายเพื่อกำหนดเวลา extra_actions

--[no]experimental_extra_action_top_level_only ค่าเริ่มต้น: "false"

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน กำหนดเวลา extra_actions สำหรับเป้าหมายระดับบนสุดเท่านั้น

--experimental_spawn_scheduler

เปิดใช้การดำเนินการแบบไดนามิกโดยการเรียกใช้การดำเนินการในเครื่องและจากระยะไกลแบบคู่ขนาน Bazel จะสร้างการดำเนินการแต่ละอย่างในเครื่องและจากระยะไกล แล้วเลือกการดำเนินการที่เสร็จสมบูรณ์ก่อน หากการดำเนินการรองรับ Worker ระบบจะเรียกใช้การดำเนินการในเครื่องในโหมด Worker แบบถาวร หากต้องการเปิดใช้การดำเนินการแบบไดนามิกสำหรับคำช่วยจำของการดำเนินการแต่ละรายการ ให้ใช้แฟล็ก --internal_spawn_scheduler และ --strategy=&lt;mnemonic&gt;=dynamic แทน

ขยายเป็น
  --internal_spawn_scheduler
  --spawn_strategy=dynamic

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--local_termination_grace_seconds=<an integer> ค่าเริ่มต้น: "15"

ระยะเวลารอระหว่างการสิ้นสุดกระบวนการในเครื่องเนื่องจากหมดเวลาและการปิดเครื่องโดยบังคับ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

--test_lang_filters=<comma-separated list of options> ค่าเริ่มต้น: ""

ระบุรายการภาษาที่ใช้ทดสอบที่คั่นด้วยคอมมา แต่ละภาษาอาจนำหน้าด้วย "-" เพื่อระบุภาษาที่ยกเว้น ระบบจะพบเฉพาะเป้าหมายการทดสอบที่เขียนในภาษาที่ระบุเท่านั้น ชื่อที่ใช้สำหรับแต่ละภาษาควรเหมือนกับคำนำหน้าภาษาในกฎ *_test เช่น "cc" "java" "py" เป็นต้น ตัวเลือกนี้จะส่งผลต่อลักษณะการทำงานของ --build_tests_only และคำสั่งทดสอบ

--test_size_filters=<comma-separated list of values: small, medium, large, or enormous> ค่าเริ่มต้น: ""

ระบุรายการขนาดการทดสอบที่คั่นด้วยคอมมา แต่ละขนาดอาจนำหน้าด้วย "-" เพื่อระบุขนาดที่ยกเว้น ระบบจะพบเฉพาะเป้าหมายการทดสอบที่มีขนาดที่รวมไว้อย่างน้อย 1 ขนาดและไม่มีขนาดที่ยกเว้น ตัวเลือกนี้ส่งผลต่อลักษณะการทำงานของ --build_tests_only และคำสั่งทดสอบ

--test_tag_filters=<comma-separated list of options> ค่าเริ่มต้น: ""

ระบุรายการแท็กทดสอบที่คั่นด้วยคอมมา คุณจะใส่เครื่องหมาย "-" ไว้หน้าแท็กแต่ละรายการหรือไม่ก็ได้เพื่อระบุแท็กที่ยกเว้น ระบบจะพบเฉพาะเป้าหมายการทดสอบที่มีแท็กที่รวมไว้อย่างน้อย 1 รายการ และไม่มีแท็กที่ยกเว้น ตัวเลือกนี้ส่งผลต่อลักษณะการทำงานของ --build_tests_only และคำสั่งทดสอบ

--test_timeout_filters=<comma-separated list of values: short, moderate, long, or eternal> ค่าเริ่มต้น: ""

ระบุรายการการหมดเวลาทดสอบที่คั่นด้วยคอมมา คุณอาจใส่เครื่องหมาย "-" ไว้หน้าการหมดเวลาแต่ละรายการเพื่อระบุการหมดเวลาที่ยกเว้นก็ได้ ระบบจะพบเฉพาะเป้าหมายการทดสอบที่มีการหมดเวลาที่รวมไว้อย่างน้อย 1 รายการและไม่มีการหมดเวลาที่ยกเว้น ตัวเลือกนี้ส่งผลต่อลักษณะการทำงานของ --build_tests_only และคำสั่งทดสอบ

--workspace_status_command=<path> ค่าเริ่มต้น: ""

คำสั่งที่เรียกใช้เมื่อเริ่มต้นการสร้างเพื่อแสดงข้อมูลสถานะเกี่ยวกับพื้นที่ทำงานในรูปแบบคู่คีย์/ค่า ดูข้อกำหนดฉบับเต็มได้ในคู่มือผู้ใช้ ดูตัวอย่างได้ที่ tools/buildstamp/get_workspace_status

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--[no]experimental_persistent_aar_extractor ค่าเริ่มต้น: "false"

เปิดใช้เครื่องมือแยก AAR แบบถาวรโดยใช้ Worker

แท็ก execution, experimental

--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_split_coverage_postprocessing ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะเรียกใช้การประมวลผลภายหลังของ Coverage สำหรับการทดสอบในกระบวนการใหม่

แท็ก execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--persistent_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android อย่างต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

แท็ก host_machine_resource_optimizations, execution

--persistent_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android แบบหลายรายการที่ต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบมัลติเพล็กซ์ถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_tools

เปิดใช้เครื่องมือ Android แบบถาวรและแบบมัลติเพล็กซ์ (dexing, desugaring, การประมวลผลทรัพยากร)

ขยายเป็น
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--android_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์เป้าหมายของ Android

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_manifest_merger=<legacy, android or force_android> ค่าเริ่มต้น: "android"

เลือกการผสานไฟล์ Manifest ที่จะใช้สำหรับกฎ android_binary Flag เพื่อช่วยในการเปลี่ยนไปใช้เครื่องมือผสานรวมไฟล์ Manifest ของ Android จากเครื่องมือผสานรวมเดิม

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_platforms=<a build target label> ค่าเริ่มต้น: ""

ตั้งค่าแพลตฟอร์มที่เป้าหมาย android_binary ใช้ หากระบุหลายแพลตฟอร์ม ไบนารีจะเป็น APK แบบ Fat ซึ่งมีไบนารีเนทีฟสำหรับแต่ละแพลตฟอร์มเป้าหมายที่ระบุ

แท็ก changes_inputs, loading_and_analysis, loses_incremental_state

--cc_output_directory_tag=<a string> ค่าเริ่มต้น: ""

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก affects_outputs

--compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์ C++ ที่จะใช้คอมไพล์เป้าหมาย

แท็ก loading_and_analysis, execution

--coverage_output_generator=<a build target label> default: "@bazel_tools//tools/test:lcov_merger"

ตำแหน่งของไบนารีที่ใช้ในการประมวลผลรายงานความครอบคลุมดิบ ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:lcov_merger"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

ตำแหน่งของไบนารีที่ใช้สร้างรายงานความครอบคลุม ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:coverage_report_generator"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

ตำแหน่งของไฟล์สนับสนุนที่จำเป็นในอินพุตของการดำเนินการทดสอบทุกครั้งที่รวบรวมความครอบคลุมของโค้ด ค่าเริ่มต้นคือ "//tools/test:coverage_support"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--custom_malloc=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุการติดตั้งใช้งาน malloc ที่กำหนดเอง การตั้งค่านี้จะลบล้างแอตทริบิวต์ malloc ในกฎการสร้าง

แท็ก changes_inputs, affects_outputs

--[no]experimental_include_xcode_execution_requirements ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode:{version}" ลงในการดำเนินการ Xcode ทุกรายการ หากเวอร์ชัน Xcode มีป้ายกำกับที่มีขีดกลาง ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode-label:{version_label}" ด้วย

แท็ก loses_incremental_state, loading_and_analysis, execution, experimental

--[no]experimental_prefer_mutual_xcode ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้ Xcode เวอร์ชันล่าสุดที่พร้อมใช้งานทั้งในเครื่องและจากระยะไกล หากเป็นเท็จ หรือหากไม่มีเวอร์ชันที่ใช้ร่วมกันได้ ให้ใช้ Xcode เวอร์ชันในเครื่องที่เลือกผ่าน xcode-select

แท็ก loses_incremental_state, experimental

--extra_execution_platforms=<comma-separated list of options> ค่าเริ่มต้น: ""

แพลตฟอร์มที่พร้อมใช้งานเป็นแพลตฟอร์มการดำเนินการเพื่อเรียกใช้การดำเนินการ คุณระบุแพลตฟอร์มได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณาแพลตฟอร์มเหล่านี้ก่อนแพลตฟอร์มที่ประกาศในไฟล์ WORKSPACE โดย register_execution_platforms() คุณตั้งค่าตัวเลือกนี้ได้เพียงครั้งเดียวเท่านั้น และอินสแตนซ์ในภายหลังจะลบล้างการตั้งค่าแฟล็กก่อนหน้า

แท็ก execution

--extra_toolchains=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

กฎ Toolchain ที่ควรพิจารณาในระหว่างการแก้ปัญหา Toolchain คุณระบุ Toolchain ได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณา Toolchain เหล่านี้ก่อน Toolchain ที่ประกาศไว้ในไฟล์ WORKSPACE โดย register_toolchains()

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

ป้ายกำกับสำหรับไลบรารี libc ที่เช็คอินแล้ว ค่าเริ่มต้นจะเลือกโดยเครื่องมือ Crosstool Toolchain และคุณแทบจะไม่ต้องลบล้างค่านี้เลย

แท็ก action_command_lines, affects_outputs

--host_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

แฟล็กที่ไม่มีการดำเนินการ จะนำออกในการเปิดตัวรุ่นต่อๆ ไป

แท็ก loading_and_analysis, execution

--host_grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุ การตั้งค่านี้จะลบล้างไดเรกทอรีระดับบนสุดของ libc (--grte_top) สำหรับการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายระบบโฮสต์

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

--[no]incompatible_builtin_objc_strip_action ค่าเริ่มต้น: "จริง"

จะปล่อยการดำเนินการ Strip เป็นส่วนหนึ่งของการลิงก์ objc หรือไม่

แท็ก action_command_lines, incompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่เปิดใช้ฟีเจอร์ "โฮสต์" และ "ไม่ใช่โฮสต์" ในเครื่องมือ C++ (ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/7407)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enable_apple_toolchain_resolution ค่าเริ่มต้น: "false"

ใช้การแก้ปัญหา Toolchain เพื่อเลือก Apple SDK สำหรับกฎ Apple (Starlark และเนทีฟ)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_remove_legacy_whole_archive ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่ลิงก์ทรัพยากร Dependency ของไลบรารีเป็นทั้งอาร์ไคฟ์โดยค่าเริ่มต้น (ดูวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/7362)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_strip_executable_safely ค่าเริ่มต้น: "false"

หากเป็นจริง การลบข้อมูลการดำเนินการสำหรับไฟล์ที่เรียกใช้งานได้จะใช้แฟล็ก -x ซึ่งจะไม่ทำให้การแก้ปัญหาเกี่ยวกับสัญลักษณ์แบบไดนามิกหยุดทำงาน

แท็ก action_command_lines, incompatible_change

--[no]interface_shared_objects ค่าเริ่มต้น: "จริง"

ใช้ออบเจ็กต์ที่แชร์ของอินเทอร์เฟซหากชุดเครื่องมือรองรับ ปัจจุบัน Toolchain ELF ทั้งหมดรองรับการตั้งค่านี้

แท็ก loading_and_analysis, affects_outputs, affects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ iOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน iOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ iOS จาก "xcode_version"

แท็ก loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ macOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน macOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ macOS จาก "xcode_version"

แท็ก loses_incremental_state

--minimum_os_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันระบบปฏิบัติการขั้นต่ำที่การคอมไพล์ของคุณกำหนดเป้าหมาย

แท็ก loading_and_analysis, affects_outputs

--platform_mappings=<a main workspace-relative path> ค่าเริ่มต้น: ""

ตำแหน่งของไฟล์การแมปที่อธิบายว่าควรใช้แพลตฟอร์มใดหากไม่ได้ตั้งค่า หรือควรตั้งค่า Flag ใดเมื่อมีแพลตฟอร์มอยู่แล้ว ต้องสัมพันธ์กับรูทของพื้นที่ทำงานหลัก ค่าเริ่มต้นคือ "platform_mappings" (ไฟล์ที่อยู่ใต้รูทของพื้นที่ทำงานโดยตรง)

แท็ก affects_outputs, changes_inputs, loading_and_analysis, non_configurable

--platforms=<a build target label> ค่าเริ่มต้น: ""

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายแพลตฟอร์มเป้าหมายสำหรับคำสั่งปัจจุบัน

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--python_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ของตัวแปล Python ที่เรียกใช้เพื่อเรียกใช้เป้าหมาย Python ในแพลตฟอร์มเป้าหมาย เลิกใช้งานแล้ว ปิดใช้โดย --incompatible_use_python_toolchains

แท็ก loading_and_analysis, affects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ tvOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน tvOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ tvOS จาก "xcode_version"

แท็ก loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition ค่าเริ่มต้น: "false"

ทำให้ apple_crosstool_transition กลับไปใช้ค่าของแฟล็ก --platforms แทน --cpu แบบเดิมเมื่อจำเป็น

แท็ก loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ watchOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน watchOS หากไม่ได้ระบุ ให้ใช้ SDK เวอร์ชันเริ่มต้นของ watchOS จาก "xcode_version"

แท็ก loses_incremental_state

--xcode_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ จะใช้ Xcode เวอร์ชันที่ระบุสำหรับการดำเนินการบิลด์ที่เกี่ยวข้อง หากไม่ได้ระบุ ระบบจะใช้ Xcode เวอร์ชันเริ่มต้นของตัวดำเนินการ

แท็ก loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ป้ายกำกับของกฎ xcode_config ที่จะใช้ในการเลือกเวอร์ชัน Xcode ในการกำหนดค่าบิลด์

แท็ก loses_incremental_state, loading_and_analysis

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]apple_generate_dsym ค่าเริ่มต้น: "false"

จะสร้างไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่อง (.dSYM) หรือไม่

แท็ก affects_outputs, action_command_lines

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]build_test_dwp ค่าเริ่มต้น: "false"

หากเปิดใช้ เมื่อสร้างการทดสอบ C++ แบบคงที่และใช้ฟิชชัน ระบบจะสร้างไฟล์ .dwp สำหรับไบนารีการทดสอบโดยอัตโนมัติด้วย

แท็ก loading_and_analysis, affects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.h"

ตั้งค่าคำต่อท้ายของไฟล์ส่วนหัวที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.cc"

ตั้งค่าคำต่อท้ายของไฟล์ต้นฉบับที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info ค่าเริ่มต้น: "false"

เรียกใช้การดำเนินการเพิ่มเติมสำหรับ API Java เวอร์ชันอื่นใน proto_library

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_save_feature_state ค่าเริ่มต้น: "false"

บันทึกสถานะของฟีเจอร์ที่เปิดใช้และที่ขอเป็นเอาต์พุตของการคอมไพล์

แท็ก affects_outputs, experimental

--fission=<a set of compilation modes> ค่าเริ่มต้น: "no"

ระบุโหมดการคอมไพล์ที่ใช้ฟิชชันสำหรับการคอมไพล์และการลิงก์ C++ อาจเป็นชุดค่าผสมใดก็ได้ของ {'fastbuild', 'dbg', 'opt'} หรือค่าพิเศษ 'yes' เพื่อเปิดใช้ทุกโหมด และ 'no' เพื่อปิดใช้ทุกโหมด

แท็ก loading_and_analysis, action_command_lines, affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

--[no]objc_generate_linkmap ค่าเริ่มต้น: "false"

ระบุว่าจะสร้างไฟล์ Linkmap หรือไม่

แท็ก affects_outputs

--[no]save_temps ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ระบบจะบันทึกเอาต์พุตชั่วคราวจาก gcc ซึ่งรวมถึงไฟล์ .s (โค้ดแอสเซมเบลอร์), ไฟล์ .i (C ที่ประมวลผลล่วงหน้า) และไฟล์ .ii (C++ ที่ประมวลผลล่วงหน้า)

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]android_databinding_use_androidx ค่าเริ่มต้น: "จริง"

สร้างไฟล์ Data Binding ที่เข้ากันได้กับ AndroidX ซึ่งใช้ได้กับ Data Binding v2 เท่านั้น แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]android_databinding_use_v3_4_args ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android กับอาร์กิวเมนต์ 3.4.0 แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--android_dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "ปิด"

กำหนดว่าจะลิงก์ C++ deps ของกฎ Android แบบไดนามิกหรือไม่เมื่อ cc_binary ไม่ได้สร้างไลบรารีที่ใช้ร่วมกันอย่างชัดเจน "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก affects_outputs, loading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> ค่าเริ่มต้น: "ตามตัวอักษร"

กำหนดลำดับของไฟล์ Manifest ที่ส่งผ่านไปยังโปรแกรมผสานไฟล์ Manifest สำหรับไบนารีของ Android ALPHABETICAL หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่เกี่ยวข้องกับ execroot ALPHABETICAL_BY_CONFIGURATION หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่สัมพันธ์กับไดเรกทอรีการกำหนดค่าภายในไดเรกทอรีเอาต์พุต DEPENDENCY หมายความว่าไฟล์ Manifest จะเรียงตามลำดับโดยไฟล์ Manifest ของแต่ละไลบรารีจะอยู่ก่อนไฟล์ Manifest ของการอ้างอิง

แท็ก action_command_lines, execution

--[no]android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis

--[no]build_python_zip ค่าเริ่มต้น: "auto"

สร้างไฟล์ ZIP ที่ปฏิบัติการได้ของ Python โดยเปิดใน Windows และปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--catalyst_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple Catalyst

แท็ก loses_incremental_state, loading_and_analysis

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C

แท็ก action_command_lines, affects_outputs

--copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc

แท็ก action_command_lines, affects_outputs

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--cs_fdo_absolute_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ CSFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อเส้นทางสัมบูรณ์ของไฟล์ ZIP ที่มีไฟล์โปรไฟล์ ไฟล์ LLVM โปรไฟล์แบบดิบ หรือไฟล์ LLVM โปรไฟล์ที่จัดทำดัชนี

แท็ก affects_outputs

--cs_fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO ที่คำนึงถึงบริบทเป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--cs_fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

cs_fdo_profile ที่แสดงโปรไฟล์ที่คำนึงถึงบริบทซึ่งจะใช้ในการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C++

แท็ก action_command_lines, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "default"

กำหนดว่าจะลิงก์ไบนารี C++ แบบไดนามิกหรือไม่ "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก loading_and_analysis, affects_outputs

--[no]enable_propeller_optimize_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ Propeller Optimize จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_remaining_fdo_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ FDO จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_android_compress_java_resources ค่าเริ่มต้น: "false"

บีบอัดทรัพยากร Java ใน APK

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_databinding_v2 ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_rewrite_dexes_with_rex ค่าเริ่มต้น: "false"

ใช้เครื่องมือ rex เพื่อเขียนไฟล์ dex ใหม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_objc_fastbuild_options=<comma-separated list of options> ค่าเริ่มต้น: "-O0,-DDEBUG=1"

ใช้สตริงเหล่านี้เป็นตัวเลือกคอมไพเลอร์ objc fastbuild

แท็ก action_command_lines

--[no]experimental_omitfp ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้ libunwind สำหรับการคลายสแต็ก และคอมไพล์ด้วย -fomit-frame-pointer และ -fasynchronous-unwind-tables

แท็ก action_command_lines, affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_py_binaries_include_label ค่าเริ่มต้น: "false"

เป้าหมาย py_binary จะมีป้ายกำกับของตัวเองแม้ว่าจะปิดใช้การประทับเวลาไว้ก็ตาม

แท็ก affects_outputs, experimental

--[no]experimental_use_llvm_covmap ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลแผนที่ความครอบคลุมของ llvm-cov แทน gcov เมื่อเปิดใช้ collect_code_coverage

แท็ก changes_inputs, affects_outputs, loading_and_analysis, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO เป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--fdo_optimize=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ FDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อไฟล์ ZIP ที่มีโครงสร้างไฟล์ .gcda, ไฟล์ AFDO ที่มีโปรไฟล์อัตโนมัติ หรือไฟล์โปรไฟล์ LLVM นอกจากนี้ แฟล็กนี้ยังยอมรับไฟล์ที่ระบุเป็นป้ายกำกับ (เช่น //foo/bar:file.afdo - คุณอาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้อง) และป้ายกำกับที่ชี้ไปยังเป้าหมาย fdo_profile กฎ fdo_profile จะมีผลแทนฟีเจอร์นี้

แท็ก affects_outputs

--fdo_prefetch_hints=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้คำแนะนำการดึงข้อมูลล่วงหน้าของแคช

แท็ก affects_outputs

--fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

fdo_profile ที่แสดงโปรไฟล์ที่จะใช้สำหรับการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--[no]force_pic ค่าเริ่มต้น: "false"

หากเปิดใช้ การคอมไพล์ C++ ทั้งหมดจะสร้างโค้ดที่ไม่ขึ้นกับตำแหน่ง ("-fPIC") ลิงก์จะเลือกใช้ไลบรารีที่สร้างไว้ล่วงหน้าแบบ PIC มากกว่าไลบรารีที่ไม่ใช่ PIC และลิงก์จะสร้างไฟล์ปฏิบัติการที่ไม่ขึ้นกับตำแหน่ง ("-pie")

แท็ก loading_and_analysis, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C เมื่อคอมไพล์ไฟล์ต้นฉบับ C (แต่ไม่ใช่ C++) ในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C++ สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--host_linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Linker เมื่อลิงก์เครื่องมือในการกำหนดค่า Exec

แท็ก action_command_lines, affects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่ใช้ร่วมกันได้สำหรับเป้าหมายโฮสต์ หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังคอมไพเลอร์ C/C++ อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ในการกำหนดค่า exec ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก action_command_lines, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

iOS เวอร์ชันขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "ios_sdk_version"

แท็ก loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาเพื่อสร้าง ios_application ผลลัพธ์คือไบนารีแบบสากลที่มีสถาปัตยกรรมที่ระบุทั้งหมด

แท็ก loses_incremental_state, loading_and_analysis

--[no]legacy_whole_archive ค่าเริ่มต้น: "จริง"

เลิกใช้งานแล้ว ถูกแทนที่ด้วย --incompatible_remove_legacy_whole_archive (ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7362) เมื่อเปิดอยู่ ให้ใช้ --whole-archive สำหรับกฎ cc_binary ที่มี linkshared=True และ linkstatic=True หรือ '-static' ใน linkopts การตั้งค่านี้ใช้เพื่อให้มีความเข้ากันได้แบบย้อนหลังเท่านั้น ทางเลือกที่ดีกว่าคือการใช้ alwayslink=1 ในกรณีที่จำเป็น

แท็ก action_command_lines, affects_outputs, deprecated

--linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อลิงก์

แท็ก action_command_lines, affects_outputs

--ltobackendopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนแบ็กเอนด์ของ LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--ltoindexopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนการจัดทำดัชนี LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--macos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple macOS

แท็ก loses_incremental_state, loading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่เข้ากันได้สำหรับเป้าหมาย หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก loses_incremental_state

--memprof_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้โปรไฟล์ memprof

แท็ก affects_outputs

--[no]objc_debug_with_GLIBCXX ค่าเริ่มต้น: "false"

หากตั้งค่าไว้และตั้งค่าโหมดการคอมไพล์เป็น "dbg" ให้กำหนด GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC และ GLIBCPP_CONCEPT_CHECKS

แท็ก action_command_lines

--[no]objc_enable_binary_stripping ค่าเริ่มต้น: "false"

ว่าจะลบสัญลักษณ์และโค้ดที่ไม่ได้ใช้ในไบนารีที่ลิงก์หรือไม่ ระบบจะทำการลบไบนารีออกหากมีการระบุทั้งแฟล็กนี้และ --compilation_mode=opt

แท็ก action_command_lines

--objccopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ Objective-C/C++

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมเพื่อส่งไปยัง gcc อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังแบ็กเอนด์ LTO อย่างเลือก (ภายใต้ --features=thin_lto) เมื่อคอมไพล์ออบเจ็กต์แบ็กเอนด์บางรายการ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดย regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่งของแบ็กเอนด์ LTO ของไฟล์.o ทั้งหมดใน //foo/ ยกเว้น bar.o

แท็ก action_command_lines, affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--propeller_optimize=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ Propeller เพื่อเพิ่มประสิทธิภาพเป้าหมายการบิลด์ โปรไฟล์ Propeller ต้องประกอบด้วยไฟล์อย่างน้อย 1 ใน 2 ไฟล์ ได้แก่ โปรไฟล์ cc และโปรไฟล์ ld แฟล็กนี้ยอมรับป้ายกำกับการสร้างซึ่งต้องอ้างอิงไฟล์อินพุตโปรไฟล์ Propeller เช่น ไฟล์ BUILD ที่กำหนดป้ายกำกับใน a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",) อาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้องเพื่อให้ Bazel มองเห็นไฟล์เหล่านี้ ต้องใช้ตัวเลือกในรูปแบบ --propeller_optimize=//a/b:propeller_profile

แท็ก action_command_lines, affects_outputs

--propeller_optimize_absolute_cc_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางสัมบูรณ์ของไฟล์ cc_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางแบบสัมบูรณ์ของไฟล์ ld_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]share_native_deps ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะแชร์ไลบรารีที่มาพร้อมเครื่องซึ่งมีฟังก์ชันการทำงานเหมือนกันในกลุ่มเป้าหมายต่างๆ

แท็ก loading_and_analysis, affects_outputs

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

--strip=<always, sometimes or never> ค่าเริ่มต้น: "บางครั้ง"

ระบุว่าจะลบไบนารีและไลบรารีที่ใช้ร่วมกันหรือไม่ (ใช้ "-Wl,--strip-debug") ค่าเริ่มต้นของ "บางครั้ง" หมายถึงการลบออกหาก --compilation_mode=fastbuild

แท็ก affects_outputs

--stripopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง strip เมื่อสร้างไบนารี "<name>.stripped"

แท็ก action_command_lines, affects_outputs

--tvos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple tvOS

แท็ก loses_incremental_state, loading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน tvOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "tvos_sdk_version"

แท็ก loses_incremental_state

--visionos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple visionOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple watchOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน watchOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ระบุ ให้ใช้ "watchos_sdk_version"

แท็ก loses_incremental_state

--xbinary_fdo=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ XbinaryFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อของโปรไฟล์ไบนารีข้ามเริ่มต้น เมื่อใช้ตัวเลือกนี้ร่วมกับ --fdo_instrument/--fdo_optimize/--fdo_profile ตัวเลือกเหล่านั้นจะมีผลเสมอราวกับว่าไม่ได้ระบุ xbinary_fdo

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]desugar_for_android ค่าเริ่มต้น: "จริง"

จะแปลงไบต์โค้ด Java 8 ก่อน dexing หรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]desugar_java8_libs ค่าเริ่มต้น: "false"

จะรวมไลบรารี Java 8 ที่รองรับไว้ในแอปสำหรับอุปกรณ์รุ่นเดิมหรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_check_desugar_deps ค่าเริ่มต้น: "จริง"

เลือกว่าจะตรวจสอบการแยกส่วนที่ถูกต้องในระดับไบนารีของ Android หรือไม่

แท็ก eagerness_to_exit, loading_and_analysis, experimental

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--experimental_one_version_enforcement=<off, warning or error> ค่าเริ่มต้น: "ปิด"

เมื่อเปิดใช้ ให้บังคับว่ากฎ java_binary ต้องมีไฟล์คลาสเวอร์ชันเดียวกันในเส้นทางคลาสได้ไม่เกิน 1 รายการ การบังคับใช้นี้อาจทำให้บิลด์ใช้งานไม่ได้ หรืออาจส่งผลให้เกิดคำเตือนเท่านั้น

แท็ก loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "default"

หากเป็นจริง จะตรวจสอบว่าเป้าหมาย Java ประกาศเป้าหมายทั้งหมดที่ใช้โดยตรงเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_native_android_rules ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะปิดใช้การใช้กฎ Android ดั้งเดิมโดยตรง โปรดใช้กฎ Android ของ Starlark จาก https://github.com/bazelbuild/rules_android

แท็ก eagerness_to_exit, incompatible_change

--[no]incompatible_disable_native_apple_binary_rule ค่าเริ่มต้น: "false"

ไม่มีการดำเนินการใดๆ เก็บไว้ที่นี่เพื่อความเข้ากันได้แบบย้อนหลัง

แท็ก eagerness_to_exit, incompatible_change

--[no]one_version_enforcement_on_java_tests ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้และตั้งค่า experimental_one_version_enforcement เป็นค่าที่ไม่ใช่ NONE ให้บังคับใช้เวอร์ชันเดียวกับเป้าหมาย java_test คุณปิดใช้ Flag นี้ได้เพื่อปรับปรุงประสิทธิภาพการทดสอบแบบเพิ่มขึ้น โดยอาจทำให้พลาดการละเมิดแบบเวอร์ชันเดียวที่อาจเกิดขึ้น

แท็ก loading_and_analysis

--python_native_rules_allowlist=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

รายการที่อนุญาต (เป้าหมาย package_group) ที่จะใช้เมื่อบังคับใช้ --incompatible_python_disallow_native_rules

แท็ก loading_and_analysis

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "error"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายที่ใช้โดยตรงทั้งหมดเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--strict_public_imports=<off, warn, error, strict or default> ค่าเริ่มต้น: "ปิด"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายทั้งหมดที่ใช้ใน "import public" อย่างชัดเจนว่าส่งออกแล้ว

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--[no]strict_system_includes ค่าเริ่มต้น: "false"

หากเป็นจริง คุณจะต้องประกาศส่วนหัวที่พบผ่านเส้นทางของระบบ (-isystem) ด้วย

แท็ก loading_and_analysis, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกที่มีผลต่อเอาต์พุตการลงนามของบิลด์
--apk_signing_method=<v1, v2, v1_v2 or v4> ค่าเริ่มต้น: "v1_v2"

การติดตั้งใช้งานเพื่อใช้ในการรับรอง APK

แท็ก action_command_lines, affects_outputs, loading_and_analysis

--[no]device_debug_entitlements ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้และโหมดการคอมไพล์ไม่ใช่ "opt" แอป objc จะมีสิทธิ์การแก้ไขข้อบกพร่องเมื่อลงนาม

แท็ก changes_inputs

--ios_signing_cert_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อใบรับรองที่จะใช้สำหรับการลงนามใน iOS หากไม่ได้ตั้งค่าไว้ ระบบจะเปลี่ยนกลับไปใช้โปรไฟล์การจัดสรร อาจเป็นค่ากำหนดข้อมูลประจำตัวในพวงกุญแจของใบรับรองหรือ (สตริงย่อย) ของชื่อทั่วไปของใบรับรอง ตามหน้า Man ของ codesign (ข้อมูลประจำตัวในการลงนาม)

แท็ก action_command_lines

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_disallow_sdk_frameworks_attributes ค่าเริ่มต้น: "false"

หากเป็น "จริง" จะไม่อนุญาตแอตทริบิวต์ sdk_frameworks และ weak_sdk_frameworks ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

หากเป็นจริง ให้ตั้งค่าเริ่มต้นเป็นจริงสำหรับแอตทริบิวต์ alwayslink ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_python_disallow_native_rules ค่าเริ่มต้น: "false"

เมื่อเป็นจริง จะเกิดข้อผิดพลาดเมื่อใช้กฎ py_* ในตัว แต่ควรใช้กฎ rule_python แทน ดูข้อมูลเพิ่มเติมและวิธีการย้ายข้อมูลได้ที่ https://github.com/bazelbuild/bazel/issues/17773

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure ค่าเริ่มต้น: "false"

หากเป็นจริง การดำเนินการ dex2oat ที่ล้มเหลวจะทำให้บิลด์หยุดทำงานแทนที่จะเรียกใช้ dex2oat ในระหว่างรันไทม์ของการทดสอบ

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ลบล้างจำนวนทรัพยากรเริ่มต้นสำหรับการทดสอบ รูปแบบที่คาดไว้คือ <resource>=<value> หากระบุตัวเลขบวกตัวเดียวเป็น <value> ระบบจะลบล้างทรัพยากรเริ่มต้นสำหรับขนาดการทดสอบทั้งหมด หากระบุตัวเลข 4 ตัวที่คั่นด้วยคอมมา ตัวเลขเหล่านั้นจะลบล้างจำนวนทรัพยากรสำหรับขนาดการทดสอบเล็ก กลาง ใหญ่ และใหญ่มากตามลำดับ นอกจากนี้ ค่าอาจเป็น HOST_RAM/HOST_CPU ตามด้วย [-|]<float> (เช่น memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4) ก็ได้ ทรัพยากรทดสอบเริ่มต้นที่ระบุโดยแฟล็กนี้จะถูกแทนที่ด้วยทรัพยากรที่ชัดเจนซึ่งระบุไว้ในแท็ก

--[no]experimental_android_use_parallel_dex2oat ค่าเริ่มต้น: "false"

ใช้ dex2oat แบบคู่ขนานเพื่อเพิ่มความเร็ว android_test

แท็ก loading_and_analysis, host_machine_resource_optimizations, experimental

--[no]ios_memleaks ค่าเริ่มต้น: "false"

เปิดใช้การตรวจสอบหน่วยความจำรั่วในเป้าหมาย ios_test

แท็ก action_command_lines

--ios_simulator_device=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

อุปกรณ์ที่จะจำลองเมื่อเรียกใช้แอปพลิเคชัน iOS ในโปรแกรมจำลอง เช่น "iPhone 6" คุณดูรายการอุปกรณ์ได้โดยเรียกใช้ "xcrun simctl list devicetypes" ในเครื่องที่จะเรียกใช้โปรแกรมจำลอง

แท็ก test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันของ iOS ที่จะเรียกใช้ในโปรแกรมจำลองเมื่อเรียกใช้หรือทดสอบ ระบบจะละเว้นพารามิเตอร์นี้สำหรับกฎ ios_test หากมีการระบุอุปกรณ์เป้าหมายในกฎ

แท็ก test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบุจำนวนครั้งที่จะเรียกใช้การทดสอบแต่ละครั้ง หากการพยายามดังกล่าวไม่สำเร็จไม่ว่าด้วยเหตุผลใดก็ตาม ระบบจะถือว่าการทดสอบทั้งหมดไม่สำเร็จ โดยปกติแล้วค่าที่ระบุจะเป็นเพียงจำนวนเต็ม ตัวอย่าง: --runs_per_test=3 จะเรียกใช้การทดสอบทั้งหมด 3 ครั้ง ไวยากรณ์อื่น: regex_filter@runs_per_test โดย runs_per_test หมายถึงค่าจำนวนเต็ม และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ตัวอย่าง: --runs_per_test=//foo/.,-//foo/bar/.@3 จะเรียกใช้การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบที่อยู่ภายใต้ foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ระบบจะทำการทดสอบเพียงครั้งเดียว

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมที่จะแทรกลงในสภาพแวดล้อมของโปรแกรมเรียกใช้การทดสอบ ตัวแปรอาจระบุโดย <code>name</code> ในกรณีนี้ ค่าจะอ่านจากสภาพแวดล้อมไคลเอ็นต์ Bazel หรือโดยคู่ <code>name=value</code> คุณยกเลิกการตั้งค่าตัวแปรที่ตั้งไว้ก่อนหน้านี้ได้ผ่าน <code>=name</code> คุณใช้ตัวเลือกนี้ได้หลายครั้งเพื่อระบุตัวแปรหลายรายการ ใช้โดยคำสั่ง "bazel test" เท่านั้น

แท็ก test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> ค่าเริ่มต้น: "-1"

ลบล้างค่าการหมดเวลาทดสอบเริ่มต้นสำหรับการหมดเวลาทดสอบ (เป็นวินาที) หากระบุค่าจำนวนเต็มบวกค่าเดียว ค่าดังกล่าวจะลบล้างหมวดหมู่ทั้งหมด หากระบุจำนวนเต็ม 4 รายการที่คั่นด้วยคอมมา ระบบจะลบล้างการหมดเวลาสำหรับระยะเวลาสั้น ปานกลาง ยาว และไม่มีกำหนด (ตามลำดับ) ไม่ว่าจะอยู่ในรูปแบบใด ค่า -1 จะบอกให้ Blaze ใช้การหมดเวลาเริ่มต้นสำหรับหมวดหมู่นั้น

--[no]zip_undeclared_test_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเก็บเอาต์พุตการทดสอบที่ไม่ได้ประกาศไว้ในไฟล์ ZIP

แท็ก test_runner

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--[no]experimental_filter_library_jar_with_program_jar ค่าเริ่มต้น: "false"

กรอง ProGuard ProgramJar เพื่อนำคลาสที่อยู่ใน LibraryJar ออก

แท็ก action_command_lines, experimental

--[no]experimental_inmemory_dotd_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์ .d ของ C++ ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_inmemory_jdeps_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์การอ้างอิง (.jdeps) ที่สร้างจากการคอมไพล์ Java ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_retain_test_configuration_across_testonly ค่าเริ่มต้น: "false"

เมื่อเปิดใช้แล้ว --trim_test_configuration จะไม่ตัดการกำหนดค่าการทดสอบสำหรับกฎที่ทำเครื่องหมาย testonly=1 ซึ่งมีจุดประสงค์เพื่อลดปัญหาความขัดแย้งในการดำเนินการเมื่อกฎที่ไม่ใช่การทดสอบขึ้นอยู่กับกฎ cc_test จะไม่มีผลหาก --trim_test_configuration เป็นเท็จ

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_unsupported_and_brittle_include_scanning ค่าเริ่มต้น: "false"

ว่าจะจำกัดอินพุตให้เหลือเฉพาะการคอมไพล์ C/C++ โดยการแยกวิเคราะห์บรรทัด #include จากไฟล์อินพุตหรือไม่ ซึ่งจะช่วยปรับปรุงประสิทธิภาพและส่วนเพิ่มด้วยการลดขนาดของทรีอินพุตการคอมไพล์ อย่างไรก็ตาม การดำเนินการนี้อาจทำให้บิลด์หยุดทำงานได้เนื่องจากเครื่องมือสแกนการรวมไม่ได้ใช้ความหมายของตัวประมวลผล C ล่วงหน้าอย่างเต็มที่ โดยเฉพาะอย่างยิ่ง เครื่องมือนี้ไม่เข้าใจคำสั่ง #include แบบไดนามิกและไม่สนใจตรรกะแบบมีเงื่อนไขของตัวประมวลผลล่วงหน้า คุณต้องรับความเสี่ยงของการใช้งานเอง เราจะปิดปัญหาที่เกี่ยวข้องกับการแจ้งว่าไม่เหมาะสมนี้ทั้งหมด

แท็ก loading_and_analysis, execution, changes_inputs, experimental

--[no]incremental_dexing ค่าเริ่มต้น: "จริง"

ทำงานส่วนใหญ่ในการแยก dexing สำหรับไฟล์ Jar แต่ละไฟล์

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]objc_use_dotd_pruning ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ระบบจะใช้ไฟล์ .d ที่ clang ปล่อยออกมาเพื่อตัดชุดอินพุตที่ส่งไปยังการคอมไพล์ objc

แท็ก changes_inputs, loading_and_analysis

--[no]process_headers_in_dependencies ค่าเริ่มต้น: "false"

เมื่อสร้างเป้าหมาย //a:a ให้ประมวลผลส่วนหัวในเป้าหมายทั้งหมดที่ //a:a ขึ้นอยู่กับ (หากเปิดใช้การประมวลผลส่วนหัวสำหรับเครื่องมือ Toolchain)

แท็ก execution

--[no]trim_test_configuration ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ ตัวเลือกที่เกี่ยวข้องกับการทดสอบจะล้างออกใต้ระดับบนสุดของบิลด์ เมื่อเปิดใช้ฟีเจอร์นี้ คุณจะสร้างการทดสอบเป็นทรัพยากร Dependency ของกฎที่ไม่ใช่การทดสอบไม่ได้ แต่การเปลี่ยนแปลงตัวเลือกที่เกี่ยวข้องกับการทดสอบจะไม่ทำให้ระบบวิเคราะห์กฎที่ไม่ใช่การทดสอบซ้ำ

แท็ก loading_and_analysis, loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: "-.*"

พิมพ์ข้อมูลการแก้ไขข้อบกพร่องระหว่างการแก้ไข Toolchain โดยแฟล็กจะใช้นิพจน์ทั่วไป ซึ่งจะตรวจสอบกับประเภท Toolchain และเป้าหมายที่เฉพาะเจาะจงเพื่อดูว่าควรแก้ไขข้อบกพร่องของรายการใด คุณคั่นนิพจน์ทั่วไปหลายรายการด้วยคอมมาได้ จากนั้นระบบจะตรวจสอบนิพจน์ทั่วไปแต่ละรายการแยกกัน หมายเหตุ: เอาต์พุตของฟีเจอร์นี้มีความซับซ้อนมากและอาจมีประโยชน์เฉพาะผู้เชี่ยวชาญด้านการแก้ไข Toolchain เท่านั้น

แท็ก terminal_output

--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

--[no]incompatible_default_to_explicit_init_py ค่าเริ่มต้น: "false"

โดยแฟล็กนี้จะเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่อให้ระบบไม่สร้างไฟล์ init.py ในไฟล์ที่เรียกใช้ของเป้าหมาย Python โดยอัตโนมัติอีกต่อไป กล่าวคือ เมื่อเป้าหมาย py_binary หรือ py_test มี legacy_create_init ตั้งค่าเป็น "auto" (ค่าเริ่มต้น) ระบบจะถือว่าเป็นเท็จก็ต่อเมื่อมีการตั้งค่าสถานะนี้ ดู https://github.com/bazelbuild/bazel/issues/10076

แท็ก affects_outputs, incompatible_change

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]cache_test_results [-t] default: "auto"

หากตั้งค่าเป็น "auto" Bazel จะเรียกใช้การทดสอบอีกครั้งในกรณีต่อไปนี้เท่านั้น (1) Bazel ตรวจพบการเปลี่ยนแปลงในการทดสอบหรือการขึ้นต่อกัน (2) มีการทำเครื่องหมายการทดสอบเป็นภายนอก (3) มีการขอเรียกใช้การทดสอบหลายครั้งด้วย --runs_per_test หรือ(4) การทดสอบล้มเหลวก่อนหน้านี้ หากตั้งค่าเป็น "ใช่" Bazel จะแคชผลการทดสอบทั้งหมด ยกเว้นการทดสอบที่ทำเครื่องหมายว่าเป็นการทดสอบภายนอก หากตั้งค่าเป็น "no" Bazel จะไม่แคชผลการทดสอบใดๆ

--[no]experimental_cancel_concurrent_tests ค่าเริ่มต้น: "ไม่เลย"

หากเป็น "on_failed" หรือ "on_passed" Blaze จะยกเลิกการทดสอบที่ทำงานพร้อมกันในการเรียกใช้ครั้งแรกที่มีผลลัพธ์ดังกล่าว ซึ่งจะมีประโยชน์เมื่อใช้ร่วมกับ --runs_per_test_detects_flakes เท่านั้น

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_fetch_all_coverage_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะดึงข้อมูลไดเรกทอรีข้อมูลความครอบคลุมทั้งหมดสำหรับการทดสอบแต่ละครั้งในระหว่างการเรียกใช้ความครอบคลุม

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_generate_llvm_lcov ค่าเริ่มต้น: "false"

หากเป็นจริง ความครอบคลุมสำหรับ Clang จะสร้างรายงาน LCOV

แท็ก affects_outputs, loading_and_analysis, experimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> ค่าเริ่มต้น: "bazel"

เปิดใช้ Classpath ที่ลดลงสำหรับการคอมไพล์ Java

--[no]experimental_run_android_lint_on_java_rules ค่าเริ่มต้น: "false"

ว่าจะตรวจสอบแหล่งข้อมูล java_* หรือไม่

แท็ก affects_outputs, experimental

--[no]explicit_java_test_deps ค่าเริ่มต้น: "false"

ระบุการขึ้นต่อ JUnit หรือ Hamcrest อย่างชัดเจนใน java_test แทนที่จะรับจาก deps ของ TestRunner โดยไม่ตั้งใจ ขณะนี้ใช้ได้กับ Bazel เท่านั้น

--host_java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่เครื่องมือใช้ซึ่งจะดำเนินการในระหว่างการสร้าง

--host_javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์

--host_jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์ ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--[no]incompatible_check_sharding_support ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะทำให้การทดสอบที่แยกส่วนล้มเหลวหากโปรแกรมเรียกใช้การทดสอบไม่ได้ระบุว่ารองรับการแยกส่วนโดยการแตะไฟล์ที่เส้นทางใน TEST_SHARD_STATUS_FILE หากเป็นเท็จ โปรแกรมเรียกใช้การทดสอบที่ไม่รองรับการแบ่งพาร์ติชันจะทำให้การทดสอบทั้งหมดทำงานในแต่ละพาร์ติชัน

แท็ก incompatible_change

--[no]incompatible_exclusive_test_sandboxed ค่าเริ่มต้น: "จริง"

หากเป็นจริง การทดสอบแบบเฉพาะจะทำงานร่วมกับกลยุทธ์แซนด์บ็อกซ์ เพิ่มแท็ก "local" เพื่อบังคับให้เรียกใช้การทดสอบแบบเฉพาะในเครื่อง

แท็ก incompatible_change

--[no]incompatible_strict_action_env ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะใช้สภาพแวดล้อมที่มีค่าแบบคงที่สำหรับ PATH และจะไม่รับค่า LD_LIBRARY_PATH ใช้ --action_env=ENV_VARIABLE หากต้องการรับค่าตัวแปรสภาพแวดล้อมที่เฉพาะเจาะจงจากไคลเอ็นต์ แต่โปรดทราบว่าการทำเช่นนี้อาจป้องกันการแคชข้ามผู้ใช้หากใช้แคชที่แชร์

แท็ก loading_and_analysis, incompatible_change

--j2objc_translation_flags=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังเครื่องมือ J2ObjC

--java_debug

ทำให้เครื่องเสมือน Java ของการทดสอบ Java รอการเชื่อมต่อจากโปรแกรมแก้ไขข้อบกพร่องที่สอดคล้องกับ JDWP (เช่น jdb) ก่อนเริ่มการทดสอบ Implies -test_output=streamed.

ขยายเป็น
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps ค่าเริ่มต้น: "จริง"

สร้างข้อมูลการขึ้นต่อกัน (ตอนนี้คือ classpath เวลาคอมไพล์) ต่อเป้าหมาย Java

--[no]java_header_compilation ค่าเริ่มต้น: "จริง"

คอมไพล์ ijar จากแหล่งที่มาโดยตรง

--java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java

--java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่จะใช้เมื่อสร้างไบนารี Java หากตั้งค่าแฟล็กนี้เป็นสตริงว่างเปล่า ระบบจะใช้ตัวเรียกใช้ JDK แอตทริบิวต์ "launcher" จะลบล้างแฟล็กนี้

--java_runtime_version=<a string> ค่าเริ่มต้น: "local_jdk"

เวอร์ชันรันไทม์ของ Java

--javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac

--jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--legacy_main_dex_list_generator=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้เพื่อสร้างรายการคลาสที่ต้องอยู่ใน dex หลักเมื่อคอมไพล์ multidex เดิม

--optimizing_dexer=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้ในการทำ dexing โดยไม่ต้องใช้การแยกส่วน

--plugin=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ปลั๊กอินที่จะใช้ในการสร้าง ปัจจุบันใช้ได้กับ java_plugin

--proguard_top=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ ProGuard ที่จะใช้ในการนำโค้ดออกเมื่อสร้างไบนารี Java

--proto_compiler=<a build target label> default: "@bazel_tools//tools/proto:protoc"

ป้ายกำกับของโปรโตคอมไพเลอร์

แท็ก affects_outputs, loading_and_analysis

--[no]proto_profile ค่าเริ่มต้น: "จริง"

ว่าจะส่ง profile_path ไปยังคอมไพเลอร์โปรโตหรือไม่

แท็ก affects_outputs, loading_and_analysis

--proto_profile_path=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

โปรไฟล์ที่จะส่งไปยังคอมไพเลอร์โปรโตคอลเป็น profile_path หากไม่ได้ตั้งค่า แต่ --proto_profile เป็นจริง (ค่าเริ่มต้น) ระบบจะอนุมานเส้นทางจาก --fdo_optimize

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_cc=<a build target label> default: "@bazel_tools//tools/proto:cc_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ C++

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> ค่าเริ่มต้น: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์โปรโตคอล j2objc

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_java=<a build target label> default: "@bazel_tools//tools/proto:java_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ Java

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ JavaLite

แท็ก affects_outputs, loading_and_analysis

--protocopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ Protobuf

แท็ก affects_outputs

--[no]runs_per_test_detects_flakes ค่าเริ่มต้น: "false"

หากเป็นจริง ชาร์ดใดก็ตามที่มีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ผ่านและมีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ไม่ผ่านจะได้รับสถานะไม่น่าเชื่อถือ

--shell_executable=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ไปยังไฟล์ปฏิบัติการของเชลล์เพื่อให้ Bazel ใช้ หากไม่ได้ตั้งค่านี้ แต่ตั้งค่าตัวแปรสภาพแวดล้อม BAZEL_SH ในการเรียกใช้ Bazel ครั้งแรก (ที่เริ่มต้นเซิร์ฟเวอร์ Bazel) Bazel จะใช้ตัวแปรนั้น หากไม่ได้ตั้งค่าทั้ง 2 อย่าง Bazel จะใช้เส้นทางเริ่มต้นที่ฮาร์ดโค้ดไว้โดยขึ้นอยู่กับระบบปฏิบัติการที่ทำงาน (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, อื่นๆ ทั้งหมด: /bin/bash) โปรดทราบว่าการใช้เชลล์ที่ไม่รองรับ bash อาจทำให้บิลด์ล้มเหลวหรือไบนารีที่สร้างขึ้นรันไทม์ล้มเหลว

แท็ก loading_and_analysis

--test_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวเลือกและอาร์กิวเมนต์เพิ่มเติมที่ควรส่งไปยังไฟล์ปฏิบัติการทดสอบ ใช้ได้หลายครั้งเพื่อระบุอาร์กิวเมนต์หลายรายการ หากมีการเรียกใช้การทดสอบหลายรายการ การทดสอบแต่ละรายการจะได้รับอาร์กิวเมนต์ที่เหมือนกัน ใช้โดยคำสั่ง "bazel test" เท่านั้น

--test_filter=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตัวกรองที่จะส่งต่อให้กับเฟรมเวิร์กการทดสอบ ใช้เพื่อจำกัดการทดสอบที่เรียกใช้ โปรดทราบว่าการดำเนินการนี้ไม่มีผลต่อเป้าหมายที่จะสร้าง

--test_result_expiration=<an integer> ค่าเริ่มต้น: "-1"

ตัวเลือกนี้เลิกใช้งานแล้วและไม่มีผล

--[no]test_runner_fail_fast ค่าเริ่มต้น: "false"

ส่งต่อตัวเลือก "ล้มเหลวอย่างรวดเร็ว" ไปยังโปรแกรมเรียกใช้การทดสอบ โปรแกรมเรียกใช้การทดสอบควรหยุดการดำเนินการเมื่อเกิดข้อผิดพลาดครั้งแรก

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> ค่าเริ่มต้น: "explicit"

ระบุกลยุทธ์สำหรับการแบ่งการทดสอบ: "explicit" เพื่อใช้การแบ่งก็ต่อเมื่อมีแอตทริบิวต์ BUILD "shard_count" "disabled" เพื่อไม่ให้ใช้การแบ่งพาร์ติชันการทดสอบ 'forced=k' เพื่อบังคับใช้ Shard 'k' สำหรับการทดสอบโดยไม่คำนึงถึงแอตทริบิวต์ BUILD ของ 'shard_count'

--tool_java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java ที่ใช้ในการเรียกใช้เครื่องมือที่จำเป็นในระหว่างการสร้าง

--tool_java_runtime_version=<a string> ค่าเริ่มต้น: "remotejdk_11"

เวอร์ชันรันไทม์ Java ที่ใช้ในการเรียกใช้เครื่องมือระหว่างการสร้าง

--[no]use_ijars ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ตัวเลือกนี้จะทำให้การคอมไพล์ Java ใช้ JAR ของอินเทอร์เฟซ ซึ่งจะทําให้การคอมไพล์ที่เพิ่มขึ้นเร็วขึ้น แต่ข้อความแสดงข้อผิดพลาดอาจแตกต่างกัน

ตัวเลือก Canonicalize-flags

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่ง
--[no]canonicalize_policy ค่าเริ่มต้น: "false"

แสดงนโยบายที่แน่นอนหลังจากการขยายและการกรอง หากต้องการให้เอาต์พุตสะอาดตา ระบบจะไม่แสดงอาร์กิวเมนต์คำสั่งที่แปลงเป็นรูปแบบมาตรฐานเมื่อตั้งค่าตัวเลือกนี้เป็น "จริง" โปรดทราบว่าคำสั่งที่ระบุโดย --for_command จะมีผลกับนโยบายที่กรองแล้ว และหากไม่ได้ระบุคำสั่งใดไว้ คำสั่งเริ่มต้นจะเป็น "build"

แท็ก affects_outputs, terminal_output

--[no]experimental_include_default_values ค่าเริ่มต้น: "จริง"

รวมตัวเลือก Starlark ที่ตั้งค่าเริ่มต้นไว้ในเอาต์พุตหรือไม่

แท็ก affects_outputs, terminal_output

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--for_command=<a string> ค่าเริ่มต้น: "build"

คำสั่งที่ควรทำให้ตัวเลือกเป็น Canonical

แท็ก affects_outputs, terminal_output

--invocation_policy=<a string> ค่าเริ่มต้น: ""

ใช้นโยบายการเรียกใช้กับตัวเลือกที่จะทำให้เป็นรูปแบบมาตรฐาน

แท็ก affects_outputs, terminal_output

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

ตัวเลือกการล้าง

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่ง
--[no]async ค่าเริ่มต้น: "false"

หากเป็นจริง การล้างข้อมูลเอาต์พุตจะเป็นแบบไม่พร้อมกัน เมื่อคำสั่งนี้เสร็จสมบูรณ์ คุณจะเรียกใช้คำสั่งใหม่ในไคลเอ็นต์เดียวกันได้อย่างปลอดภัย แม้ว่าการลบอาจยังคงดำเนินการในเบื้องหลังต่อไปก็ตาม

แท็ก host_machine_resource_optimizations

--[no]expunge ค่าเริ่มต้น: "false"

หากเป็นจริง การล้างจะนำทั้งแผนผังการทำงานของอินสแตนซ์ Bazel นี้ออก ซึ่งรวมถึงไฟล์เอาต์พุตการสร้างและไฟล์ชั่วคราวทั้งหมดที่ Bazel สร้างขึ้น และจะหยุดเซิร์ฟเวอร์ Bazel หากกำลังทำงานอยู่

แท็ก host_machine_resource_optimizations

--expunge_async

หากระบุไว้ clean จะนำทั้งแผนผังการทำงานของอินสแตนซ์ Bazel นี้ออกแบบอะซิงโครนัส ซึ่งรวมถึงไฟล์เอาต์พุตการสร้างและไฟล์ชั่วคราวทั้งหมดที่ Bazel สร้างขึ้น และจะหยุดเซิร์ฟเวอร์ Bazel หากกำลังทำงานอยู่ เมื่อคำสั่งนี้เสร็จสมบูรณ์ คุณจะเรียกใช้คำสั่งใหม่ในไคลเอ็นต์เดียวกันได้อย่างปลอดภัย แม้ว่าการลบอาจยังคงดำเนินการในเบื้องหลังต่อไปก็ตาม

ขยายเป็น
  --expunge
  --async

แท็ก host_machine_resource_optimizations

ตัวเลือกการกำหนดค่า

ตัวเลือกความครอบคลุม

รับค่าตัวเลือกทั้งหมดจาก test

ตัวเลือก Cquery

รับค่าตัวเลือกทั้งหมดจาก test

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและการตีความหมายของคำค้นหา
--aspect_deps=<off, conservative or precise> ค่าเริ่มต้น: "ระมัดระวัง"

วิธีแก้ไขการขึ้นต่อกันของแง่มุมเมื่อรูปแบบเอาต์พุตเป็นหนึ่งใน {xml,proto,record} "off" หมายความว่าจะไม่มีการแก้ไขการขึ้นต่อกันของแง่มุม "conservative" (ค่าเริ่มต้น) หมายความว่าจะมีการเพิ่มการขึ้นต่อกันของแง่มุมที่ประกาศทั้งหมดไม่ว่าแง่มุมเหล่านั้นจะได้รับคลาสกฎของการขึ้นต่อกันโดยตรงหรือไม่ก็ตาม "precise" หมายความว่าจะมีการเพิ่มเฉพาะแง่มุมที่อาจใช้งานได้เมื่อพิจารณาจากคลาสกฎของการขึ้นต่อกันโดยตรง โปรดทราบว่าโหมดที่แม่นยำต้องโหลดแพ็กเกจอื่นๆ เพื่อประเมินเป้าหมายเดียว จึงทำให้ช้ากว่าโหมดอื่นๆ โปรดทราบว่าแม้ในโหมดที่แม่นยำก็ยังไม่แม่นยำโดยสมบูรณ์ เนื่องจากระบบจะตัดสินใจว่าจะคำนวณแง่มุมใดในระยะการวิเคราะห์ ซึ่งไม่ได้ทำงานระหว่าง "bazel query"

แท็ก build_file_semantics

--[no]consistent_labels ค่าเริ่มต้น: "false"

หากเปิดใช้ คำสั่งค้นหาทุกคำสั่งจะปล่อยป้ายกำกับออกมาเสมือนว่าใช้ฟังก์ชัน <code>str</code> ของ Starlark กับอินสแตนซ์ <code>Label</code> ซึ่งจะเป็นประโยชน์สำหรับเครื่องมือที่ต้องจับคู่เอาต์พุตของคำสั่งการค้นหาและ/หรือป้ายกำกับต่างๆ ที่กฎปล่อยออกมา หากไม่ได้เปิดใช้ ตัวจัดรูปแบบเอาต์พุตจะสามารถปล่อยชื่อที่เก็บที่ชัดเจน (เทียบกับที่เก็บหลัก) แทนเพื่อให้เอาต์พุตอ่านง่ายขึ้น

แท็ก terminal_output

--[no]experimental_explicit_aspects ค่าเริ่มต้น: "false"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]graph:factored ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะส่งกราฟที่ "แยกตัวประกอบ" กล่าวคือ ระบบจะผสานโหนดที่เทียบเท่ากันในเชิงโทโพโลยีเข้าด้วยกันและต่อป้ายกำกับของโหนดเหล่านั้น ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--graph:node_limit=<an integer> ค่าเริ่มต้น: "512"

ความยาวสูงสุดของสตริงป้ายกำกับสำหรับโหนดกราฟในเอาต์พุต ระบบจะตัดป้ายกำกับที่ยาวเกินไป โดย -1 หมายถึงไม่มีการตัด ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--[no]implicit_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมทรัพยากร Dependency โดยนัยไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน การขึ้นต่อกันโดยนัยคือการขึ้นต่อกันที่ไม่ได้ระบุอย่างชัดเจนในไฟล์ BUILD แต่ Bazel เพิ่มให้ สำหรับ cquery ตัวเลือกนี้จะควบคุมการกรอง Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--[no]include_aspects ค่าเริ่มต้น: "จริง"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]incompatible_package_group_includes_double_slash ค่าเริ่มต้น: "จริง"

หากเปิดใช้ เมื่อส่งออกแอตทริบิวต์ packages ของ package_group ระบบจะไม่ละเว้น // ที่นำหน้า

แท็ก terminal_output, incompatible_change

--[no]infer_universe_scope ค่าเริ่มต้น: "false"

หากตั้งค่าและไม่ได้ตั้งค่า --universe_scope ระบบจะอนุมานค่าของ --universe_scope เป็นรายการรูปแบบเป้าหมายที่ไม่ซ้ำกันในนิพจน์การค้นหา โปรดทราบว่าค่า --universe_scope ที่อนุมานสำหรับนิพจน์การค้นหาที่ใช้ฟังก์ชันระดับจักรวาล (เช่น allrdeps) อาจไม่ใช่สิ่งที่คุณต้องการ ดังนั้นคุณควรใช้ตัวเลือกนี้เฉพาะในกรณีที่คุณทราบว่ากำลังทำอะไรอยู่ ดูรายละเอียดและตัวอย่างได้ที่ https://bazel.build/reference/query#sky-query หากตั้งค่า --universe_scope ระบบจะไม่สนใจค่าของตัวเลือกนี้ หมายเหตุ: ตัวเลือกนี้ใช้กับ query เท่านั้น (ไม่ใช่ cquery)

แท็ก loading_and_analysis

--[no]line_terminator_null ค่าเริ่มต้น: "false"

ไม่ว่าจะสิ้นสุดแต่ละรูปแบบด้วย \0 แทนการขึ้นบรรทัดใหม่หรือไม่

แท็ก terminal_output

--[no]nodep_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมการขึ้นต่อกันจากแอตทริบิวต์ "nodep" ไว้ในกราฟการขึ้นต่อกันที่การค้นหาทำงาน ตัวอย่างทั่วไปของแอตทริบิวต์ "nodep" คือ "visibility" เรียกใช้และแยกวิเคราะห์เอาต์พุตของ info build-language เพื่อดูแอตทริบิวต์ "nodep" ทั้งหมดในภาษาบิลด์

แท็ก build_file_semantics

--output=<a string> ค่าเริ่มต้น: "label"

รูปแบบที่ควรพิมพ์ผลลัพธ์ของ cquery ค่าที่อนุญาตสำหรับ cquery ได้แก่ label, label_kind, textproto, transitions, proto, streamed_proto, jsonproto หากเลือก "transitions" คุณต้องระบุตัวเลือก --transitions=(lite|full) ด้วย

แท็ก terminal_output

--output_file=<a string> ค่าเริ่มต้น: ""

เมื่อระบุ ผลลัพธ์การค้นหาจะเขียนลงในไฟล์นี้โดยตรง และจะไม่มีการพิมพ์อะไรลงในสตรีมเอาต์พุตมาตรฐาน (stdout) ของ Bazel ในการทดสอบเปรียบเทียบ โดยทั่วไปแล้ววิธีนี้จะเร็วกว่า <code>bazel query &gt; file</code>

แท็ก terminal_output

--[no]proto:default_values ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมแอตทริบิวต์ที่ไม่ได้ระบุค่าอย่างชัดเจนในไฟล์ BUILD มิฉะนั้นจะละเว้น ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:definition_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง proto definition_stack ซึ่งจะบันทึกสแต็กการเรียก Starlark สำหรับอินสแตนซ์ของกฎแต่ละรายการ ณ เวลาที่กำหนดคลาสของกฎ

แท็ก terminal_output

--[no]proto:flatten_selects ค่าเริ่มต้น: "จริง"

หากเปิดใช้ แอตทริบิวต์ที่กำหนดค่าได้ซึ่งสร้างโดย select() จะได้รับการปรับให้แบน สำหรับประเภทรายการ การแสดงแบบ Flatten คือรายการที่มีค่าแต่ละค่าของแผนที่ที่เลือกเพียงครั้งเดียว ระบบจะทำให้ประเภทสเกลาร์แบนเป็นค่าว่าง

แท็ก build_file_semantics

--[no]proto:include_attribute_source_aspects ค่าเริ่มต้น: "false"

ป้อนข้อมูลลงในช่องโปรโต source_aspect_name ของแอตทริบิวต์แต่ละรายการด้วยแง่มุมของแหล่งที่มาที่แอตทริบิวต์มาจาก (สตริงว่างหากไม่ได้มาจากแง่มุมของแหล่งที่มา)

แท็ก terminal_output

--[no]proto:include_configurations ค่าเริ่มต้น: "จริง"

หากเปิดใช้ เอาต์พุตโปรโตจะรวมข้อมูลเกี่ยวกับการกำหนดค่า เมื่อปิดใช้ รูปแบบเอาต์พุตของ cquery proto จะคล้ายกับรูปแบบเอาต์พุตของคำค้นหา

แท็ก affects_outputs

--[no]proto:include_starlark_rule_env ค่าเริ่มต้น: "จริง"

ใช้สภาพแวดล้อม Starlark ในค่าของแอตทริบิวต์ $internal_attr_hash ที่สร้างขึ้น ซึ่งจะช่วยให้มั่นใจได้ว่าคำจำกัดความของกฎ Starlark (และการนำเข้าแบบทรานซิทีฟ) เป็นส่วนหนึ่งของตัวระบุนี้

แท็ก terminal_output

--[no]proto:include_synthetic_attribute_hash ค่าเริ่มต้น: "false"

เลือกว่าจะคำนวณและป้อนแอตทริบิวต์ $internal_attr_hash หรือไม่

แท็ก terminal_output

--[no]proto:instantiation_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในสแต็กการเรียกอินสแตนซ์ของแต่ละกฎ โปรดทราบว่าต้องมีสแต็ก

แท็ก terminal_output

--[no]proto:locations ค่าเริ่มต้น: "จริง"

เลือกว่าจะแสดงข้อมูลตำแหน่งในเอาต์พุต Proto หรือไม่

แท็ก terminal_output

--proto:output_rule_attrs=<comma-separated list of options> ค่าเริ่มต้น: "all"

รายการแอตทริบิวต์ที่คั่นด้วยจุลภาคที่จะรวมไว้ในเอาต์พุต ค่าเริ่มต้นคือแอตทริบิวต์ทั้งหมด ตั้งค่าเป็นสตริงว่างเปล่าเพื่อไม่ให้แสดงแอตทริบิวต์ใดๆ ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:rule_classes ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง rule_class_key ของแต่ละกฎ และสำหรับกฎแรกที่มี rule_class_key ที่ระบุ ให้ป้อนข้อมูลในช่อง rule_class_info proto ด้วย ฟิลด์ rule_class_key จะระบุคลาสกฎที่ไม่ซ้ำกัน และฟิลด์ rule_class_info คือคำจำกัดความ API ของคลาสกฎในรูปแบบ Stardoc

แท็ก terminal_output

--[no]proto:rule_inputs_and_outputs ค่าเริ่มต้น: "จริง"

จะป้อนข้อมูลในช่อง rule_input และ rule_output หรือไม่

แท็ก terminal_output

--query_file=<a string> ค่าเริ่มต้น: ""

หากตั้งค่าไว้ การค้นหาจะอ่านการค้นหาจากไฟล์ที่ตั้งชื่อไว้ที่นี่ แทนที่จะอ่านจากบรรทัดคำสั่ง การระบุไฟล์ที่นี่รวมถึงการค้นหาในบรรทัดคำสั่งถือเป็นข้อผิดพลาด

แท็ก changes_inputs

--[no]relative_locations ค่าเริ่มต้น: "false"

หากเป็นจริง ตำแหน่งของไฟล์ BUILD ในเอาต์พุต XML และ Proto จะเป็นแบบสัมพัทธ์ โดยค่าเริ่มต้น เอาต์พุตตำแหน่งจะเป็นเส้นทางที่สมบูรณ์และจะไม่สอดคล้องกันในเครื่องต่างๆ คุณสามารถตั้งค่าตัวเลือกนี้เป็น "จริง" เพื่อให้ได้ผลลัพธ์ที่สอดคล้องกันในเครื่องต่างๆ

แท็ก terminal_output

--show_config_fragments=<off, direct or transitive> ค่าเริ่มต้น: "ปิด"

แสดงส่วนการกำหนดค่าที่กฎและทรัพยากร Dependency แบบทรานซิทีฟของกฎนั้นต้องการ ซึ่งจะเป็นประโยชน์ในการประเมินว่ากราฟเป้าหมายที่กำหนดค่าไว้สามารถตัดออกได้มากน้อยเพียงใด

แท็ก affects_outputs

--starlark:expr=<a string> ค่าเริ่มต้น: ""

นิพจน์ Starlark เพื่อจัดรูปแบบเป้าหมายที่กำหนดค่าแต่ละรายการในโหมด --output=starlark ของ cquery เป้าหมายที่กำหนดค่าจะเชื่อมโยงกับ "target" หากไม่ได้ระบุทั้ง --starlark:expr และ --starlark:file ตัวเลือกนี้จะมีค่าเริ่มต้นเป็น "str(target.label)" การระบุทั้ง --starlark:expr และ --starlark:file ถือเป็นข้อผิดพลาด

แท็ก terminal_output

--starlark:file=<a string> ค่าเริ่มต้น: ""

ชื่อของไฟล์ที่กำหนดฟังก์ชัน Starlark ที่ชื่อ "format" ซึ่งมีอาร์กิวเมนต์ 1 รายการที่จะนำไปใช้กับแต่ละเป้าหมายที่กำหนดค่าเพื่อจัดรูปแบบเป็นสตริง การระบุทั้ง --starlark:expr และ --starlark:file ถือเป็นข้อผิดพลาด ดูรายละเอียดเพิ่มเติมได้ที่ความช่วยเหลือสำหรับ --output=starlark

แท็ก terminal_output

--[no]tool_deps ค่าเริ่มต้น: "จริง"

การค้นหา: หากปิดใช้ ระบบจะไม่รวมทรัพยากร Dependency ใน "การกำหนดค่า exec" ไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน ขอบการขึ้นต่อกันของ "การกำหนดค่า exec" เช่น ขอบจากกฎ "proto_library" ไปยังคอมไพเลอร์โปรโตคอล มักจะชี้ไปยังเครื่องมือที่เรียกใช้ในระหว่างการบิลด์แทนที่จะเป็นส่วนหนึ่งของโปรแกรม "เป้าหมาย" เดียวกัน Cquery: หากปิดใช้ จะกรองเป้าหมายที่กำหนดค่าทั้งหมดซึ่งข้ามการเปลี่ยนการดำเนินการจากเป้าหมายระดับบนสุดที่ค้นพบเป้าหมายที่กำหนดค่านี้ ซึ่งหมายความว่าหากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่าเป้าหมาย ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่าซึ่งอยู่ในกำหนดค่าเป้าหมายด้วย หากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่า exec ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่า exec ตัวเลือกนี้จะไม่ยกเว้น Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--transitions=<full, lite or none> ค่าเริ่มต้น: "ไม่มี"

รูปแบบที่ cquery จะพิมพ์ข้อมูลการเปลี่ยน

แท็ก affects_outputs

--universe_scope=<comma-separated list of options> ค่าเริ่มต้น: ""

ชุดรูปแบบเป้าหมายที่คั่นด้วยคอมมา (การบวกและการลบ) ระบบอาจเรียกใช้การค้นหาในจักรวาลที่กำหนดโดยการปิดทรานซิทีฟของเป้าหมายที่ระบุ ตัวเลือกนี้ใช้สำหรับคำสั่งการค้นหาและ cquery สำหรับ cquery อินพุตของตัวเลือกนี้คือเป้าหมายที่สร้างคำตอบทั้งหมดขึ้นมา ดังนั้นตัวเลือกนี้อาจส่งผลต่อการกำหนดค่าและการเปลี่ยนผ่าน หากไม่ได้ระบุตัวเลือกนี้ ระบบจะถือว่าเป้าหมายระดับบนสุดคือเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหา หมายเหตุ: สำหรับ cquery การไม่ระบุตัวเลือกนี้อาจทำให้บิลด์หยุดทำงานหากเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหาไม่สามารถสร้างได้ด้วยตัวเลือกที่ระดับบนสุด

แท็ก loading_and_analysis

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--[no]experimental_persistent_aar_extractor ค่าเริ่มต้น: "false"

เปิดใช้เครื่องมือแยก AAR แบบถาวรโดยใช้ Worker

แท็ก execution, experimental

--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_split_coverage_postprocessing ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะเรียกใช้การประมวลผลภายหลังของ Coverage สำหรับการทดสอบในกระบวนการใหม่

แท็ก execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--persistent_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android อย่างต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

แท็ก host_machine_resource_optimizations, execution

--persistent_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android แบบหลายรายการที่ต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบมัลติเพล็กซ์ถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_tools

เปิดใช้เครื่องมือ Android แบบถาวรและแบบมัลติเพล็กซ์ (dexing, desugaring, การประมวลผลทรัพยากร)

ขยายเป็น
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--android_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์เป้าหมายของ Android

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_manifest_merger=<legacy, android or force_android> ค่าเริ่มต้น: "android"

เลือกการผสานไฟล์ Manifest ที่จะใช้สำหรับกฎ android_binary Flag เพื่อช่วยในการเปลี่ยนไปใช้เครื่องมือผสานรวมไฟล์ Manifest ของ Android จากเครื่องมือผสานรวมเดิม

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_platforms=<a build target label> ค่าเริ่มต้น: ""

ตั้งค่าแพลตฟอร์มที่เป้าหมาย android_binary ใช้ หากระบุหลายแพลตฟอร์ม ไบนารีจะเป็น APK แบบ Fat ซึ่งมีไบนารีเนทีฟสำหรับแต่ละแพลตฟอร์มเป้าหมายที่ระบุ

แท็ก changes_inputs, loading_and_analysis, loses_incremental_state

--cc_output_directory_tag=<a string> ค่าเริ่มต้น: ""

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก affects_outputs

--compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์ C++ ที่จะใช้คอมไพล์เป้าหมาย

แท็ก loading_and_analysis, execution

--coverage_output_generator=<a build target label> default: "@bazel_tools//tools/test:lcov_merger"

ตำแหน่งของไบนารีที่ใช้ในการประมวลผลรายงานความครอบคลุมดิบ ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:lcov_merger"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

ตำแหน่งของไบนารีที่ใช้สร้างรายงานความครอบคลุม ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:coverage_report_generator"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

ตำแหน่งของไฟล์สนับสนุนที่จำเป็นในอินพุตของการดำเนินการทดสอบทุกครั้งที่รวบรวมความครอบคลุมของโค้ด ค่าเริ่มต้นคือ "//tools/test:coverage_support"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--custom_malloc=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุการติดตั้งใช้งาน malloc ที่กำหนดเอง การตั้งค่านี้จะลบล้างแอตทริบิวต์ malloc ในกฎการสร้าง

แท็ก changes_inputs, affects_outputs

--[no]experimental_include_xcode_execution_requirements ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode:{version}" ลงในการดำเนินการ Xcode ทุกรายการ หากเวอร์ชัน Xcode มีป้ายกำกับที่มีขีดกลาง ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode-label:{version_label}" ด้วย

แท็ก loses_incremental_state, loading_and_analysis, execution, experimental

--[no]experimental_prefer_mutual_xcode ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้ Xcode เวอร์ชันล่าสุดที่พร้อมใช้งานทั้งในเครื่องและจากระยะไกล หากเป็นเท็จ หรือหากไม่มีเวอร์ชันที่ใช้ร่วมกันได้ ให้ใช้ Xcode เวอร์ชันในเครื่องที่เลือกผ่าน xcode-select

แท็ก loses_incremental_state, experimental

--extra_execution_platforms=<comma-separated list of options> ค่าเริ่มต้น: ""

แพลตฟอร์มที่พร้อมใช้งานเป็นแพลตฟอร์มการดำเนินการเพื่อเรียกใช้การดำเนินการ คุณระบุแพลตฟอร์มได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณาแพลตฟอร์มเหล่านี้ก่อนแพลตฟอร์มที่ประกาศในไฟล์ WORKSPACE โดย register_execution_platforms() คุณตั้งค่าตัวเลือกนี้ได้เพียงครั้งเดียวเท่านั้น และอินสแตนซ์ในภายหลังจะลบล้างการตั้งค่าแฟล็กก่อนหน้า

แท็ก execution

--extra_toolchains=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

กฎ Toolchain ที่ควรพิจารณาในระหว่างการแก้ปัญหา Toolchain คุณระบุ Toolchain ได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณา Toolchain เหล่านี้ก่อน Toolchain ที่ประกาศไว้ในไฟล์ WORKSPACE โดย register_toolchains()

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

ป้ายกำกับสำหรับไลบรารี libc ที่เช็คอินแล้ว ค่าเริ่มต้นจะเลือกโดยเครื่องมือ Crosstool Toolchain และคุณแทบจะไม่ต้องลบล้างค่านี้เลย

แท็ก action_command_lines, affects_outputs

--host_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

แฟล็กที่ไม่มีการดำเนินการ จะนำออกในการเปิดตัวรุ่นต่อๆ ไป

แท็ก loading_and_analysis, execution

--host_grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุ การตั้งค่านี้จะลบล้างไดเรกทอรีระดับบนสุดของ libc (--grte_top) สำหรับการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายระบบโฮสต์

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

--[no]incompatible_builtin_objc_strip_action ค่าเริ่มต้น: "จริง"

จะปล่อยการดำเนินการ Strip เป็นส่วนหนึ่งของการลิงก์ objc หรือไม่

แท็ก action_command_lines, incompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่เปิดใช้ฟีเจอร์ "โฮสต์" และ "ไม่ใช่โฮสต์" ในเครื่องมือ C++ (ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/7407)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enable_apple_toolchain_resolution ค่าเริ่มต้น: "false"

ใช้การแก้ปัญหา Toolchain เพื่อเลือก Apple SDK สำหรับกฎ Apple (Starlark และเนทีฟ)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_remove_legacy_whole_archive ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่ลิงก์ทรัพยากร Dependency ของไลบรารีเป็นทั้งอาร์ไคฟ์โดยค่าเริ่มต้น (ดูวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/7362)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_strip_executable_safely ค่าเริ่มต้น: "false"

หากเป็นจริง การลบข้อมูลการดำเนินการสำหรับไฟล์ที่เรียกใช้งานได้จะใช้แฟล็ก -x ซึ่งจะไม่ทำให้การแก้ปัญหาเกี่ยวกับสัญลักษณ์แบบไดนามิกหยุดทำงาน

แท็ก action_command_lines, incompatible_change

--[no]interface_shared_objects ค่าเริ่มต้น: "จริง"

ใช้ออบเจ็กต์ที่แชร์ของอินเทอร์เฟซหากชุดเครื่องมือรองรับ ปัจจุบัน Toolchain ELF ทั้งหมดรองรับการตั้งค่านี้

แท็ก loading_and_analysis, affects_outputs, affects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ iOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน iOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ iOS จาก "xcode_version"

แท็ก loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ macOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน macOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ macOS จาก "xcode_version"

แท็ก loses_incremental_state

--minimum_os_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันระบบปฏิบัติการขั้นต่ำที่การคอมไพล์ของคุณกำหนดเป้าหมาย

แท็ก loading_and_analysis, affects_outputs

--platform_mappings=<a main workspace-relative path> ค่าเริ่มต้น: ""

ตำแหน่งของไฟล์การแมปที่อธิบายว่าควรใช้แพลตฟอร์มใดหากไม่ได้ตั้งค่า หรือควรตั้งค่า Flag ใดเมื่อมีแพลตฟอร์มอยู่แล้ว ต้องสัมพันธ์กับรูทของพื้นที่ทำงานหลัก ค่าเริ่มต้นคือ "platform_mappings" (ไฟล์ที่อยู่ใต้รูทของพื้นที่ทำงานโดยตรง)

แท็ก affects_outputs, changes_inputs, loading_and_analysis, non_configurable

--platforms=<a build target label> ค่าเริ่มต้น: ""

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายแพลตฟอร์มเป้าหมายสำหรับคำสั่งปัจจุบัน

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--python_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ของตัวแปล Python ที่เรียกใช้เพื่อเรียกใช้เป้าหมาย Python ในแพลตฟอร์มเป้าหมาย เลิกใช้งานแล้ว ปิดใช้โดย --incompatible_use_python_toolchains

แท็ก loading_and_analysis, affects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ tvOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน tvOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ tvOS จาก "xcode_version"

แท็ก loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition ค่าเริ่มต้น: "false"

ทำให้ apple_crosstool_transition กลับไปใช้ค่าของแฟล็ก --platforms แทน --cpu แบบเดิมเมื่อจำเป็น

แท็ก loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ watchOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน watchOS หากไม่ได้ระบุ ให้ใช้ SDK เวอร์ชันเริ่มต้นของ watchOS จาก "xcode_version"

แท็ก loses_incremental_state

--xcode_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ จะใช้ Xcode เวอร์ชันที่ระบุสำหรับการดำเนินการบิลด์ที่เกี่ยวข้อง หากไม่ได้ระบุ ระบบจะใช้ Xcode เวอร์ชันเริ่มต้นของตัวดำเนินการ

แท็ก loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ป้ายกำกับของกฎ xcode_config ที่จะใช้ในการเลือกเวอร์ชัน Xcode ในการกำหนดค่าบิลด์

แท็ก loses_incremental_state, loading_and_analysis

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]apple_generate_dsym ค่าเริ่มต้น: "false"

จะสร้างไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่อง (.dSYM) หรือไม่

แท็ก affects_outputs, action_command_lines

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]build_test_dwp ค่าเริ่มต้น: "false"

หากเปิดใช้ เมื่อสร้างการทดสอบ C++ แบบคงที่และใช้ฟิชชัน ระบบจะสร้างไฟล์ .dwp สำหรับไบนารีการทดสอบโดยอัตโนมัติด้วย

แท็ก loading_and_analysis, affects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.h"

ตั้งค่าคำต่อท้ายของไฟล์ส่วนหัวที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.cc"

ตั้งค่าคำต่อท้ายของไฟล์ต้นฉบับที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info ค่าเริ่มต้น: "false"

เรียกใช้การดำเนินการเพิ่มเติมสำหรับ API Java เวอร์ชันอื่นใน proto_library

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_save_feature_state ค่าเริ่มต้น: "false"

บันทึกสถานะของฟีเจอร์ที่เปิดใช้และที่ขอเป็นเอาต์พุตของการคอมไพล์

แท็ก affects_outputs, experimental

--fission=<a set of compilation modes> ค่าเริ่มต้น: "no"

ระบุโหมดการคอมไพล์ที่ใช้ฟิชชันสำหรับการคอมไพล์และการลิงก์ C++ อาจเป็นชุดค่าผสมใดก็ได้ของ {'fastbuild', 'dbg', 'opt'} หรือค่าพิเศษ 'yes' เพื่อเปิดใช้ทุกโหมด และ 'no' เพื่อปิดใช้ทุกโหมด

แท็ก loading_and_analysis, action_command_lines, affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

--[no]objc_generate_linkmap ค่าเริ่มต้น: "false"

ระบุว่าจะสร้างไฟล์ Linkmap หรือไม่

แท็ก affects_outputs

--[no]save_temps ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ระบบจะบันทึกเอาต์พุตชั่วคราวจาก gcc ซึ่งรวมถึงไฟล์ .s (โค้ดแอสเซมเบลอร์), ไฟล์ .i (C ที่ประมวลผลล่วงหน้า) และไฟล์ .ii (C++ ที่ประมวลผลล่วงหน้า)

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]android_databinding_use_androidx ค่าเริ่มต้น: "จริง"

สร้างไฟล์ Data Binding ที่เข้ากันได้กับ AndroidX ซึ่งใช้ได้กับ Data Binding v2 เท่านั้น แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]android_databinding_use_v3_4_args ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android กับอาร์กิวเมนต์ 3.4.0 แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--android_dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "ปิด"

กำหนดว่าจะลิงก์ C++ deps ของกฎ Android แบบไดนามิกหรือไม่เมื่อ cc_binary ไม่ได้สร้างไลบรารีที่ใช้ร่วมกันอย่างชัดเจน "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก affects_outputs, loading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> ค่าเริ่มต้น: "ตามตัวอักษร"

กำหนดลำดับของไฟล์ Manifest ที่ส่งผ่านไปยังโปรแกรมผสานไฟล์ Manifest สำหรับไบนารีของ Android ALPHABETICAL หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่เกี่ยวข้องกับ execroot ALPHABETICAL_BY_CONFIGURATION หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่สัมพันธ์กับไดเรกทอรีการกำหนดค่าภายในไดเรกทอรีเอาต์พุต DEPENDENCY หมายความว่าไฟล์ Manifest จะเรียงตามลำดับโดยไฟล์ Manifest ของแต่ละไลบรารีจะอยู่ก่อนไฟล์ Manifest ของการอ้างอิง

แท็ก action_command_lines, execution

--[no]android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis

--[no]build_python_zip ค่าเริ่มต้น: "auto"

สร้างไฟล์ ZIP ที่ปฏิบัติการได้ของ Python โดยเปิดใน Windows และปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--catalyst_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple Catalyst

แท็ก loses_incremental_state, loading_and_analysis

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C

แท็ก action_command_lines, affects_outputs

--copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc

แท็ก action_command_lines, affects_outputs

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--cs_fdo_absolute_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ CSFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อเส้นทางสัมบูรณ์ของไฟล์ ZIP ที่มีไฟล์โปรไฟล์ ไฟล์ LLVM โปรไฟล์แบบดิบ หรือไฟล์ LLVM โปรไฟล์ที่จัดทำดัชนี

แท็ก affects_outputs

--cs_fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO ที่คำนึงถึงบริบทเป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--cs_fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

cs_fdo_profile ที่แสดงโปรไฟล์ที่คำนึงถึงบริบทซึ่งจะใช้ในการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C++

แท็ก action_command_lines, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "default"

กำหนดว่าจะลิงก์ไบนารี C++ แบบไดนามิกหรือไม่ "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก loading_and_analysis, affects_outputs

--[no]enable_propeller_optimize_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ Propeller Optimize จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_remaining_fdo_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ FDO จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_android_compress_java_resources ค่าเริ่มต้น: "false"

บีบอัดทรัพยากร Java ใน APK

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_databinding_v2 ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_rewrite_dexes_with_rex ค่าเริ่มต้น: "false"

ใช้เครื่องมือ rex เพื่อเขียนไฟล์ dex ใหม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_objc_fastbuild_options=<comma-separated list of options> ค่าเริ่มต้น: "-O0,-DDEBUG=1"

ใช้สตริงเหล่านี้เป็นตัวเลือกคอมไพเลอร์ objc fastbuild

แท็ก action_command_lines

--[no]experimental_omitfp ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้ libunwind สำหรับการคลายสแต็ก และคอมไพล์ด้วย -fomit-frame-pointer และ -fasynchronous-unwind-tables

แท็ก action_command_lines, affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_py_binaries_include_label ค่าเริ่มต้น: "false"

เป้าหมาย py_binary จะมีป้ายกำกับของตัวเองแม้ว่าจะปิดใช้การประทับเวลาไว้ก็ตาม

แท็ก affects_outputs, experimental

--[no]experimental_use_llvm_covmap ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลแผนที่ความครอบคลุมของ llvm-cov แทน gcov เมื่อเปิดใช้ collect_code_coverage

แท็ก changes_inputs, affects_outputs, loading_and_analysis, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO เป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--fdo_optimize=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ FDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อไฟล์ ZIP ที่มีโครงสร้างไฟล์ .gcda, ไฟล์ AFDO ที่มีโปรไฟล์อัตโนมัติ หรือไฟล์โปรไฟล์ LLVM นอกจากนี้ แฟล็กนี้ยังยอมรับไฟล์ที่ระบุเป็นป้ายกำกับ (เช่น //foo/bar:file.afdo - คุณอาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้อง) และป้ายกำกับที่ชี้ไปยังเป้าหมาย fdo_profile กฎ fdo_profile จะมีผลแทนฟีเจอร์นี้

แท็ก affects_outputs

--fdo_prefetch_hints=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้คำแนะนำการดึงข้อมูลล่วงหน้าของแคช

แท็ก affects_outputs

--fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

fdo_profile ที่แสดงโปรไฟล์ที่จะใช้สำหรับการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--[no]force_pic ค่าเริ่มต้น: "false"

หากเปิดใช้ การคอมไพล์ C++ ทั้งหมดจะสร้างโค้ดที่ไม่ขึ้นกับตำแหน่ง ("-fPIC") ลิงก์จะเลือกใช้ไลบรารีที่สร้างไว้ล่วงหน้าแบบ PIC มากกว่าไลบรารีที่ไม่ใช่ PIC และลิงก์จะสร้างไฟล์ปฏิบัติการที่ไม่ขึ้นกับตำแหน่ง ("-pie")

แท็ก loading_and_analysis, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C เมื่อคอมไพล์ไฟล์ต้นฉบับ C (แต่ไม่ใช่ C++) ในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C++ สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--host_linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Linker เมื่อลิงก์เครื่องมือในการกำหนดค่า Exec

แท็ก action_command_lines, affects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่ใช้ร่วมกันได้สำหรับเป้าหมายโฮสต์ หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังคอมไพเลอร์ C/C++ อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ในการกำหนดค่า exec ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก action_command_lines, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

iOS เวอร์ชันขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "ios_sdk_version"

แท็ก loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาเพื่อสร้าง ios_application ผลลัพธ์คือไบนารีแบบสากลที่มีสถาปัตยกรรมที่ระบุทั้งหมด

แท็ก loses_incremental_state, loading_and_analysis

--[no]legacy_whole_archive ค่าเริ่มต้น: "จริง"

เลิกใช้งานแล้ว ถูกแทนที่ด้วย --incompatible_remove_legacy_whole_archive (ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7362) เมื่อเปิดอยู่ ให้ใช้ --whole-archive สำหรับกฎ cc_binary ที่มี linkshared=True และ linkstatic=True หรือ '-static' ใน linkopts การตั้งค่านี้ใช้เพื่อให้มีความเข้ากันได้แบบย้อนหลังเท่านั้น ทางเลือกที่ดีกว่าคือการใช้ alwayslink=1 ในกรณีที่จำเป็น

แท็ก action_command_lines, affects_outputs, deprecated

--linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อลิงก์

แท็ก action_command_lines, affects_outputs

--ltobackendopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนแบ็กเอนด์ของ LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--ltoindexopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนการจัดทำดัชนี LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--macos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple macOS

แท็ก loses_incremental_state, loading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่เข้ากันได้สำหรับเป้าหมาย หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก loses_incremental_state

--memprof_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้โปรไฟล์ memprof

แท็ก affects_outputs

--[no]objc_debug_with_GLIBCXX ค่าเริ่มต้น: "false"

หากตั้งค่าไว้และตั้งค่าโหมดการคอมไพล์เป็น "dbg" ให้กำหนด GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC และ GLIBCPP_CONCEPT_CHECKS

แท็ก action_command_lines

--[no]objc_enable_binary_stripping ค่าเริ่มต้น: "false"

ว่าจะลบสัญลักษณ์และโค้ดที่ไม่ได้ใช้ในไบนารีที่ลิงก์หรือไม่ ระบบจะทำการลบไบนารีออกหากมีการระบุทั้งแฟล็กนี้และ --compilation_mode=opt

แท็ก action_command_lines

--objccopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ Objective-C/C++

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมเพื่อส่งไปยัง gcc อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังแบ็กเอนด์ LTO อย่างเลือก (ภายใต้ --features=thin_lto) เมื่อคอมไพล์ออบเจ็กต์แบ็กเอนด์บางรายการ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดย regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่งของแบ็กเอนด์ LTO ของไฟล์.o ทั้งหมดใน //foo/ ยกเว้น bar.o

แท็ก action_command_lines, affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--propeller_optimize=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ Propeller เพื่อเพิ่มประสิทธิภาพเป้าหมายการบิลด์ โปรไฟล์ Propeller ต้องประกอบด้วยไฟล์อย่างน้อย 1 ใน 2 ไฟล์ ได้แก่ โปรไฟล์ cc และโปรไฟล์ ld แฟล็กนี้ยอมรับป้ายกำกับการสร้างซึ่งต้องอ้างอิงไฟล์อินพุตโปรไฟล์ Propeller เช่น ไฟล์ BUILD ที่กำหนดป้ายกำกับใน a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",) อาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้องเพื่อให้ Bazel มองเห็นไฟล์เหล่านี้ ต้องใช้ตัวเลือกในรูปแบบ --propeller_optimize=//a/b:propeller_profile

แท็ก action_command_lines, affects_outputs

--propeller_optimize_absolute_cc_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางสัมบูรณ์ของไฟล์ cc_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางแบบสัมบูรณ์ของไฟล์ ld_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]share_native_deps ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะแชร์ไลบรารีที่มาพร้อมเครื่องซึ่งมีฟังก์ชันการทำงานเหมือนกันในกลุ่มเป้าหมายต่างๆ

แท็ก loading_and_analysis, affects_outputs

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

--strip=<always, sometimes or never> ค่าเริ่มต้น: "บางครั้ง"

ระบุว่าจะลบไบนารีและไลบรารีที่ใช้ร่วมกันหรือไม่ (ใช้ "-Wl,--strip-debug") ค่าเริ่มต้นของ "บางครั้ง" หมายถึงการลบออกหาก --compilation_mode=fastbuild

แท็ก affects_outputs

--stripopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง strip เมื่อสร้างไบนารี "<name>.stripped"

แท็ก action_command_lines, affects_outputs

--tvos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple tvOS

แท็ก loses_incremental_state, loading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน tvOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "tvos_sdk_version"

แท็ก loses_incremental_state

--visionos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple visionOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple watchOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน watchOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ระบุ ให้ใช้ "watchos_sdk_version"

แท็ก loses_incremental_state

--xbinary_fdo=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ XbinaryFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อของโปรไฟล์ไบนารีข้ามเริ่มต้น เมื่อใช้ตัวเลือกนี้ร่วมกับ --fdo_instrument/--fdo_optimize/--fdo_profile ตัวเลือกเหล่านั้นจะมีผลเสมอราวกับว่าไม่ได้ระบุ xbinary_fdo

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]desugar_for_android ค่าเริ่มต้น: "จริง"

จะแปลงไบต์โค้ด Java 8 ก่อน dexing หรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]desugar_java8_libs ค่าเริ่มต้น: "false"

จะรวมไลบรารี Java 8 ที่รองรับไว้ในแอปสำหรับอุปกรณ์รุ่นเดิมหรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_check_desugar_deps ค่าเริ่มต้น: "จริง"

เลือกว่าจะตรวจสอบการแยกส่วนที่ถูกต้องในระดับไบนารีของ Android หรือไม่

แท็ก eagerness_to_exit, loading_and_analysis, experimental

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--experimental_one_version_enforcement=<off, warning or error> ค่าเริ่มต้น: "ปิด"

เมื่อเปิดใช้ ให้บังคับว่ากฎ java_binary ต้องมีไฟล์คลาสเวอร์ชันเดียวกันในเส้นทางคลาสได้ไม่เกิน 1 รายการ การบังคับใช้นี้อาจทำให้บิลด์ใช้งานไม่ได้ หรืออาจส่งผลให้เกิดคำเตือนเท่านั้น

แท็ก loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "default"

หากเป็นจริง จะตรวจสอบว่าเป้าหมาย Java ประกาศเป้าหมายทั้งหมดที่ใช้โดยตรงเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_native_android_rules ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะปิดใช้การใช้กฎ Android ดั้งเดิมโดยตรง โปรดใช้กฎ Android ของ Starlark จาก https://github.com/bazelbuild/rules_android

แท็ก eagerness_to_exit, incompatible_change

--[no]incompatible_disable_native_apple_binary_rule ค่าเริ่มต้น: "false"

ไม่มีการดำเนินการใดๆ เก็บไว้ที่นี่เพื่อความเข้ากันได้แบบย้อนหลัง

แท็ก eagerness_to_exit, incompatible_change

--[no]one_version_enforcement_on_java_tests ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้และตั้งค่า experimental_one_version_enforcement เป็นค่าที่ไม่ใช่ NONE ให้บังคับใช้เวอร์ชันเดียวกับเป้าหมาย java_test คุณปิดใช้ Flag นี้ได้เพื่อปรับปรุงประสิทธิภาพการทดสอบแบบเพิ่มขึ้น โดยอาจทำให้พลาดการละเมิดแบบเวอร์ชันเดียวที่อาจเกิดขึ้น

แท็ก loading_and_analysis

--python_native_rules_allowlist=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

รายการที่อนุญาต (เป้าหมาย package_group) ที่จะใช้เมื่อบังคับใช้ --incompatible_python_disallow_native_rules

แท็ก loading_and_analysis

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "error"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายที่ใช้โดยตรงทั้งหมดเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--strict_public_imports=<off, warn, error, strict or default> ค่าเริ่มต้น: "ปิด"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายทั้งหมดที่ใช้ใน "import public" อย่างชัดเจนว่าส่งออกแล้ว

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--[no]strict_system_includes ค่าเริ่มต้น: "false"

หากเป็นจริง คุณจะต้องประกาศส่วนหัวที่พบผ่านเส้นทางของระบบ (-isystem) ด้วย

แท็ก loading_and_analysis, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกที่มีผลต่อเอาต์พุตการลงนามของบิลด์
--apk_signing_method=<v1, v2, v1_v2 or v4> ค่าเริ่มต้น: "v1_v2"

การติดตั้งใช้งานเพื่อใช้ในการรับรอง APK

แท็ก action_command_lines, affects_outputs, loading_and_analysis

--[no]device_debug_entitlements ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้และโหมดการคอมไพล์ไม่ใช่ "opt" แอป objc จะมีสิทธิ์การแก้ไขข้อบกพร่องเมื่อลงนาม

แท็ก changes_inputs

--ios_signing_cert_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อใบรับรองที่จะใช้สำหรับการลงนามใน iOS หากไม่ได้ตั้งค่าไว้ ระบบจะเปลี่ยนกลับไปใช้โปรไฟล์การจัดสรร อาจเป็นค่ากำหนดข้อมูลประจำตัวในพวงกุญแจของใบรับรองหรือ (สตริงย่อย) ของชื่อทั่วไปของใบรับรอง ตามหน้า Man ของ codesign (ข้อมูลประจำตัวในการลงนาม)

แท็ก action_command_lines

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_disallow_sdk_frameworks_attributes ค่าเริ่มต้น: "false"

หากเป็น "จริง" จะไม่อนุญาตแอตทริบิวต์ sdk_frameworks และ weak_sdk_frameworks ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

หากเป็นจริง ให้ตั้งค่าเริ่มต้นเป็นจริงสำหรับแอตทริบิวต์ alwayslink ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_python_disallow_native_rules ค่าเริ่มต้น: "false"

เมื่อเป็นจริง จะเกิดข้อผิดพลาดเมื่อใช้กฎ py_* ในตัว แต่ควรใช้กฎ rule_python แทน ดูข้อมูลเพิ่มเติมและวิธีการย้ายข้อมูลได้ที่ https://github.com/bazelbuild/bazel/issues/17773

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure ค่าเริ่มต้น: "false"

หากเป็นจริง การดำเนินการ dex2oat ที่ล้มเหลวจะทำให้บิลด์หยุดทำงานแทนที่จะเรียกใช้ dex2oat ในระหว่างรันไทม์ของการทดสอบ

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ลบล้างจำนวนทรัพยากรเริ่มต้นสำหรับการทดสอบ รูปแบบที่คาดไว้คือ <resource>=<value> หากระบุตัวเลขบวกตัวเดียวเป็น <value> ระบบจะลบล้างทรัพยากรเริ่มต้นสำหรับขนาดการทดสอบทั้งหมด หากระบุตัวเลข 4 ตัวที่คั่นด้วยคอมมา ตัวเลขเหล่านั้นจะลบล้างจำนวนทรัพยากรสำหรับขนาดการทดสอบเล็ก กลาง ใหญ่ และใหญ่มากตามลำดับ นอกจากนี้ ค่าอาจเป็น HOST_RAM/HOST_CPU ตามด้วย [-|]<float> (เช่น memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4) ก็ได้ ทรัพยากรทดสอบเริ่มต้นที่ระบุโดยแฟล็กนี้จะถูกแทนที่ด้วยทรัพยากรที่ชัดเจนซึ่งระบุไว้ในแท็ก

--[no]experimental_android_use_parallel_dex2oat ค่าเริ่มต้น: "false"

ใช้ dex2oat แบบคู่ขนานเพื่อเพิ่มความเร็ว android_test

แท็ก loading_and_analysis, host_machine_resource_optimizations, experimental

--[no]ios_memleaks ค่าเริ่มต้น: "false"

เปิดใช้การตรวจสอบหน่วยความจำรั่วในเป้าหมาย ios_test

แท็ก action_command_lines

--ios_simulator_device=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

อุปกรณ์ที่จะจำลองเมื่อเรียกใช้แอปพลิเคชัน iOS ในโปรแกรมจำลอง เช่น "iPhone 6" คุณดูรายการอุปกรณ์ได้โดยเรียกใช้ "xcrun simctl list devicetypes" ในเครื่องที่จะเรียกใช้โปรแกรมจำลอง

แท็ก test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันของ iOS ที่จะเรียกใช้ในโปรแกรมจำลองเมื่อเรียกใช้หรือทดสอบ ระบบจะละเว้นพารามิเตอร์นี้สำหรับกฎ ios_test หากมีการระบุอุปกรณ์เป้าหมายในกฎ

แท็ก test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบุจำนวนครั้งที่จะเรียกใช้การทดสอบแต่ละครั้ง หากการพยายามดังกล่าวไม่สำเร็จไม่ว่าด้วยเหตุผลใดก็ตาม ระบบจะถือว่าการทดสอบทั้งหมดไม่สำเร็จ โดยปกติแล้วค่าที่ระบุจะเป็นเพียงจำนวนเต็ม ตัวอย่าง: --runs_per_test=3 จะเรียกใช้การทดสอบทั้งหมด 3 ครั้ง ไวยากรณ์อื่น: regex_filter@runs_per_test โดย runs_per_test หมายถึงค่าจำนวนเต็ม และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ตัวอย่าง: --runs_per_test=//foo/.,-//foo/bar/.@3 จะเรียกใช้การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบที่อยู่ภายใต้ foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ระบบจะทำการทดสอบเพียงครั้งเดียว

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมที่จะแทรกลงในสภาพแวดล้อมของโปรแกรมเรียกใช้การทดสอบ ตัวแปรอาจระบุโดย <code>name</code> ในกรณีนี้ ค่าจะอ่านจากสภาพแวดล้อมไคลเอ็นต์ Bazel หรือโดยคู่ <code>name=value</code> คุณยกเลิกการตั้งค่าตัวแปรที่ตั้งไว้ก่อนหน้านี้ได้ผ่าน <code>=name</code> คุณใช้ตัวเลือกนี้ได้หลายครั้งเพื่อระบุตัวแปรหลายรายการ ใช้โดยคำสั่ง "bazel test" เท่านั้น

แท็ก test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> ค่าเริ่มต้น: "-1"

ลบล้างค่าการหมดเวลาทดสอบเริ่มต้นสำหรับการหมดเวลาทดสอบ (เป็นวินาที) หากระบุค่าจำนวนเต็มบวกค่าเดียว ค่าดังกล่าวจะลบล้างหมวดหมู่ทั้งหมด หากระบุจำนวนเต็ม 4 รายการที่คั่นด้วยคอมมา ระบบจะลบล้างการหมดเวลาสำหรับระยะเวลาสั้น ปานกลาง ยาว และไม่มีกำหนด (ตามลำดับ) ไม่ว่าจะอยู่ในรูปแบบใด ค่า -1 จะบอกให้ Blaze ใช้การหมดเวลาเริ่มต้นสำหรับหมวดหมู่นั้น

--[no]zip_undeclared_test_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเก็บเอาต์พุตการทดสอบที่ไม่ได้ประกาศไว้ในไฟล์ ZIP

แท็ก test_runner

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--[no]experimental_filter_library_jar_with_program_jar ค่าเริ่มต้น: "false"

กรอง ProGuard ProgramJar เพื่อนำคลาสที่อยู่ใน LibraryJar ออก

แท็ก action_command_lines, experimental

--[no]experimental_inmemory_dotd_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์ .d ของ C++ ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_inmemory_jdeps_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์การอ้างอิง (.jdeps) ที่สร้างจากการคอมไพล์ Java ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_retain_test_configuration_across_testonly ค่าเริ่มต้น: "false"

เมื่อเปิดใช้แล้ว --trim_test_configuration จะไม่ตัดการกำหนดค่าการทดสอบสำหรับกฎที่ทำเครื่องหมาย testonly=1 ซึ่งมีจุดประสงค์เพื่อลดปัญหาความขัดแย้งในการดำเนินการเมื่อกฎที่ไม่ใช่การทดสอบขึ้นอยู่กับกฎ cc_test จะไม่มีผลหาก --trim_test_configuration เป็นเท็จ

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_unsupported_and_brittle_include_scanning ค่าเริ่มต้น: "false"

ว่าจะจำกัดอินพุตให้เหลือเฉพาะการคอมไพล์ C/C++ โดยการแยกวิเคราะห์บรรทัด #include จากไฟล์อินพุตหรือไม่ ซึ่งจะช่วยปรับปรุงประสิทธิภาพและส่วนเพิ่มด้วยการลดขนาดของทรีอินพุตการคอมไพล์ อย่างไรก็ตาม การดำเนินการนี้อาจทำให้บิลด์หยุดทำงานได้เนื่องจากเครื่องมือสแกนการรวมไม่ได้ใช้ความหมายของตัวประมวลผล C ล่วงหน้าอย่างเต็มที่ โดยเฉพาะอย่างยิ่ง เครื่องมือนี้ไม่เข้าใจคำสั่ง #include แบบไดนามิกและไม่สนใจตรรกะแบบมีเงื่อนไขของตัวประมวลผลล่วงหน้า คุณต้องรับความเสี่ยงของการใช้งานเอง เราจะปิดปัญหาที่เกี่ยวข้องกับการแจ้งว่าไม่เหมาะสมนี้ทั้งหมด

แท็ก loading_and_analysis, execution, changes_inputs, experimental

--[no]incremental_dexing ค่าเริ่มต้น: "จริง"

ทำงานส่วนใหญ่ในการแยก dexing สำหรับไฟล์ Jar แต่ละไฟล์

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]objc_use_dotd_pruning ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ระบบจะใช้ไฟล์ .d ที่ clang ปล่อยออกมาเพื่อตัดชุดอินพุตที่ส่งไปยังการคอมไพล์ objc

แท็ก changes_inputs, loading_and_analysis

--[no]process_headers_in_dependencies ค่าเริ่มต้น: "false"

เมื่อสร้างเป้าหมาย //a:a ให้ประมวลผลส่วนหัวในเป้าหมายทั้งหมดที่ //a:a ขึ้นอยู่กับ (หากเปิดใช้การประมวลผลส่วนหัวสำหรับเครื่องมือ Toolchain)

แท็ก execution

--[no]trim_test_configuration ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ ตัวเลือกที่เกี่ยวข้องกับการทดสอบจะล้างออกใต้ระดับบนสุดของบิลด์ เมื่อเปิดใช้ฟีเจอร์นี้ คุณจะสร้างการทดสอบเป็นทรัพยากร Dependency ของกฎที่ไม่ใช่การทดสอบไม่ได้ แต่การเปลี่ยนแปลงตัวเลือกที่เกี่ยวข้องกับการทดสอบจะไม่ทำให้ระบบวิเคราะห์กฎที่ไม่ใช่การทดสอบซ้ำ

แท็ก loading_and_analysis, loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: "-.*"

พิมพ์ข้อมูลการแก้ไขข้อบกพร่องระหว่างการแก้ไข Toolchain โดยแฟล็กจะใช้นิพจน์ทั่วไป ซึ่งจะตรวจสอบกับประเภท Toolchain และเป้าหมายที่เฉพาะเจาะจงเพื่อดูว่าควรแก้ไขข้อบกพร่องของรายการใด คุณคั่นนิพจน์ทั่วไปหลายรายการด้วยคอมมาได้ จากนั้นระบบจะตรวจสอบนิพจน์ทั่วไปแต่ละรายการแยกกัน หมายเหตุ: เอาต์พุตของฟีเจอร์นี้มีความซับซ้อนมากและอาจมีประโยชน์เฉพาะผู้เชี่ยวชาญด้านการแก้ไข Toolchain เท่านั้น

แท็ก terminal_output

--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

--[no]incompatible_default_to_explicit_init_py ค่าเริ่มต้น: "false"

โดยแฟล็กนี้จะเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่อให้ระบบไม่สร้างไฟล์ init.py ในไฟล์ที่เรียกใช้ของเป้าหมาย Python โดยอัตโนมัติอีกต่อไป กล่าวคือ เมื่อเป้าหมาย py_binary หรือ py_test มี legacy_create_init ตั้งค่าเป็น "auto" (ค่าเริ่มต้น) ระบบจะถือว่าเป็นเท็จก็ต่อเมื่อมีการตั้งค่าสถานะนี้ ดู https://github.com/bazelbuild/bazel/issues/10076

แท็ก affects_outputs, incompatible_change

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]cache_test_results [-t] default: "auto"

หากตั้งค่าเป็น "auto" Bazel จะเรียกใช้การทดสอบอีกครั้งในกรณีต่อไปนี้เท่านั้น (1) Bazel ตรวจพบการเปลี่ยนแปลงในการทดสอบหรือการขึ้นต่อกัน (2) มีการทำเครื่องหมายการทดสอบเป็นภายนอก (3) มีการขอเรียกใช้การทดสอบหลายครั้งด้วย --runs_per_test หรือ(4) การทดสอบล้มเหลวก่อนหน้านี้ หากตั้งค่าเป็น "ใช่" Bazel จะแคชผลการทดสอบทั้งหมด ยกเว้นการทดสอบที่ทำเครื่องหมายว่าเป็นการทดสอบภายนอก หากตั้งค่าเป็น "no" Bazel จะไม่แคชผลการทดสอบใดๆ

--[no]experimental_cancel_concurrent_tests ค่าเริ่มต้น: "ไม่เลย"

หากเป็น "on_failed" หรือ "on_passed" Blaze จะยกเลิกการทดสอบที่ทำงานพร้อมกันในการเรียกใช้ครั้งแรกที่มีผลลัพธ์ดังกล่าว ซึ่งจะมีประโยชน์เมื่อใช้ร่วมกับ --runs_per_test_detects_flakes เท่านั้น

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_fetch_all_coverage_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะดึงข้อมูลไดเรกทอรีข้อมูลความครอบคลุมทั้งหมดสำหรับการทดสอบแต่ละครั้งในระหว่างการเรียกใช้ความครอบคลุม

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_generate_llvm_lcov ค่าเริ่มต้น: "false"

หากเป็นจริง ความครอบคลุมสำหรับ Clang จะสร้างรายงาน LCOV

แท็ก affects_outputs, loading_and_analysis, experimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> ค่าเริ่มต้น: "bazel"

เปิดใช้ Classpath ที่ลดลงสำหรับการคอมไพล์ Java

--[no]experimental_run_android_lint_on_java_rules ค่าเริ่มต้น: "false"

ว่าจะตรวจสอบแหล่งข้อมูล java_* หรือไม่

แท็ก affects_outputs, experimental

--[no]explicit_java_test_deps ค่าเริ่มต้น: "false"

ระบุการขึ้นต่อ JUnit หรือ Hamcrest อย่างชัดเจนใน java_test แทนที่จะรับจาก deps ของ TestRunner โดยไม่ตั้งใจ ขณะนี้ใช้ได้กับ Bazel เท่านั้น

--host_java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่เครื่องมือใช้ซึ่งจะดำเนินการในระหว่างการสร้าง

--host_javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์

--host_jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์ ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--[no]incompatible_check_sharding_support ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะทำให้การทดสอบที่แยกส่วนล้มเหลวหากโปรแกรมเรียกใช้การทดสอบไม่ได้ระบุว่ารองรับการแยกส่วนโดยการแตะไฟล์ที่เส้นทางใน TEST_SHARD_STATUS_FILE หากเป็นเท็จ โปรแกรมเรียกใช้การทดสอบที่ไม่รองรับการแบ่งพาร์ติชันจะทำให้การทดสอบทั้งหมดทำงานในแต่ละพาร์ติชัน

แท็ก incompatible_change

--[no]incompatible_exclusive_test_sandboxed ค่าเริ่มต้น: "จริง"

หากเป็นจริง การทดสอบแบบเฉพาะจะทำงานร่วมกับกลยุทธ์แซนด์บ็อกซ์ เพิ่มแท็ก "local" เพื่อบังคับให้เรียกใช้การทดสอบแบบเฉพาะในเครื่อง

แท็ก incompatible_change

--[no]incompatible_strict_action_env ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะใช้สภาพแวดล้อมที่มีค่าแบบคงที่สำหรับ PATH และจะไม่รับค่า LD_LIBRARY_PATH ใช้ --action_env=ENV_VARIABLE หากต้องการรับค่าตัวแปรสภาพแวดล้อมที่เฉพาะเจาะจงจากไคลเอ็นต์ แต่โปรดทราบว่าการทำเช่นนี้อาจป้องกันการแคชข้ามผู้ใช้หากใช้แคชที่แชร์

แท็ก loading_and_analysis, incompatible_change

--j2objc_translation_flags=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังเครื่องมือ J2ObjC

--java_debug

ทำให้เครื่องเสมือน Java ของการทดสอบ Java รอการเชื่อมต่อจากโปรแกรมแก้ไขข้อบกพร่องที่สอดคล้องกับ JDWP (เช่น jdb) ก่อนเริ่มการทดสอบ Implies -test_output=streamed.

ขยายเป็น
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps ค่าเริ่มต้น: "จริง"

สร้างข้อมูลการขึ้นต่อกัน (ตอนนี้คือ classpath เวลาคอมไพล์) ต่อเป้าหมาย Java

--[no]java_header_compilation ค่าเริ่มต้น: "จริง"

คอมไพล์ ijar จากแหล่งที่มาโดยตรง

--java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java

--java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่จะใช้เมื่อสร้างไบนารี Java หากตั้งค่าแฟล็กนี้เป็นสตริงว่างเปล่า ระบบจะใช้ตัวเรียกใช้ JDK แอตทริบิวต์ "launcher" จะลบล้างแฟล็กนี้

--java_runtime_version=<a string> ค่าเริ่มต้น: "local_jdk"

เวอร์ชันรันไทม์ของ Java

--javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac

--jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--legacy_main_dex_list_generator=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้เพื่อสร้างรายการคลาสที่ต้องอยู่ใน dex หลักเมื่อคอมไพล์ multidex เดิม

--optimizing_dexer=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้ในการทำ dexing โดยไม่ต้องใช้การแยกส่วน

--plugin=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ปลั๊กอินที่จะใช้ในการสร้าง ปัจจุบันใช้ได้กับ java_plugin

--proguard_top=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ ProGuard ที่จะใช้ในการนำโค้ดออกเมื่อสร้างไบนารี Java

--proto_compiler=<a build target label> default: "@bazel_tools//tools/proto:protoc"

ป้ายกำกับของโปรโตคอมไพเลอร์

แท็ก affects_outputs, loading_and_analysis

--[no]proto_profile ค่าเริ่มต้น: "จริง"

ว่าจะส่ง profile_path ไปยังคอมไพเลอร์โปรโตหรือไม่

แท็ก affects_outputs, loading_and_analysis

--proto_profile_path=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

โปรไฟล์ที่จะส่งไปยังคอมไพเลอร์โปรโตคอลเป็น profile_path หากไม่ได้ตั้งค่า แต่ --proto_profile เป็นจริง (ค่าเริ่มต้น) ระบบจะอนุมานเส้นทางจาก --fdo_optimize

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_cc=<a build target label> default: "@bazel_tools//tools/proto:cc_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ C++

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> ค่าเริ่มต้น: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์โปรโตคอล j2objc

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_java=<a build target label> default: "@bazel_tools//tools/proto:java_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ Java

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ JavaLite

แท็ก affects_outputs, loading_and_analysis

--protocopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ Protobuf

แท็ก affects_outputs

--[no]runs_per_test_detects_flakes ค่าเริ่มต้น: "false"

หากเป็นจริง ชาร์ดใดก็ตามที่มีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ผ่านและมีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ไม่ผ่านจะได้รับสถานะไม่น่าเชื่อถือ

--shell_executable=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ไปยังไฟล์ปฏิบัติการของเชลล์เพื่อให้ Bazel ใช้ หากไม่ได้ตั้งค่านี้ แต่ตั้งค่าตัวแปรสภาพแวดล้อม BAZEL_SH ในการเรียกใช้ Bazel ครั้งแรก (ที่เริ่มต้นเซิร์ฟเวอร์ Bazel) Bazel จะใช้ตัวแปรนั้น หากไม่ได้ตั้งค่าทั้ง 2 อย่าง Bazel จะใช้เส้นทางเริ่มต้นที่ฮาร์ดโค้ดไว้โดยขึ้นอยู่กับระบบปฏิบัติการที่ทำงาน (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, อื่นๆ ทั้งหมด: /bin/bash) โปรดทราบว่าการใช้เชลล์ที่ไม่รองรับ bash อาจทำให้บิลด์ล้มเหลวหรือไบนารีที่สร้างขึ้นรันไทม์ล้มเหลว

แท็ก loading_and_analysis

--test_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวเลือกและอาร์กิวเมนต์เพิ่มเติมที่ควรส่งไปยังไฟล์ปฏิบัติการทดสอบ ใช้ได้หลายครั้งเพื่อระบุอาร์กิวเมนต์หลายรายการ หากมีการเรียกใช้การทดสอบหลายรายการ การทดสอบแต่ละรายการจะได้รับอาร์กิวเมนต์ที่เหมือนกัน ใช้โดยคำสั่ง "bazel test" เท่านั้น

--test_filter=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตัวกรองที่จะส่งต่อให้กับเฟรมเวิร์กการทดสอบ ใช้เพื่อจำกัดการทดสอบที่เรียกใช้ โปรดทราบว่าการดำเนินการนี้ไม่มีผลต่อเป้าหมายที่จะสร้าง

--test_result_expiration=<an integer> ค่าเริ่มต้น: "-1"

ตัวเลือกนี้เลิกใช้งานแล้วและไม่มีผล

--[no]test_runner_fail_fast ค่าเริ่มต้น: "false"

ส่งต่อตัวเลือก "ล้มเหลวอย่างรวดเร็ว" ไปยังโปรแกรมเรียกใช้การทดสอบ โปรแกรมเรียกใช้การทดสอบควรหยุดการดำเนินการเมื่อเกิดข้อผิดพลาดครั้งแรก

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> ค่าเริ่มต้น: "explicit"

ระบุกลยุทธ์สำหรับการแบ่งการทดสอบ: "explicit" เพื่อใช้การแบ่งก็ต่อเมื่อมีแอตทริบิวต์ BUILD "shard_count" "disabled" เพื่อไม่ให้ใช้การแบ่งพาร์ติชันการทดสอบ 'forced=k' เพื่อบังคับใช้ Shard 'k' สำหรับการทดสอบโดยไม่คำนึงถึงแอตทริบิวต์ BUILD ของ 'shard_count'

--tool_java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java ที่ใช้ในการเรียกใช้เครื่องมือที่จำเป็นในระหว่างการสร้าง

--tool_java_runtime_version=<a string> ค่าเริ่มต้น: "remotejdk_11"

เวอร์ชันรันไทม์ Java ที่ใช้ในการเรียกใช้เครื่องมือระหว่างการสร้าง

--[no]use_ijars ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ตัวเลือกนี้จะทำให้การคอมไพล์ Java ใช้ JAR ของอินเทอร์เฟซ ซึ่งจะทําให้การคอมไพล์ที่เพิ่มขึ้นเร็วขึ้น แต่ข้อความแสดงข้อผิดพลาดอาจแตกต่างกัน

ตัวเลือกการทิ้ง

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่ง
--[no]action_cache ค่าเริ่มต้น: "false"

ทิ้งเนื้อหาแคชการดำเนินการ

แท็ก bazel_monitoring

--memory=<memory mode> ค่าเริ่มต้น: ดูคำอธิบาย

ทิ้งการใช้หน่วยความจำของโหนด Skyframe ที่ระบุ

แท็ก bazel_monitoring

--[no]packages ค่าเริ่มต้น: "false"

ทิ้งเนื้อหาแคชของแพ็กเกจ

แท็ก bazel_monitoring

--[no]rule_classes ค่าเริ่มต้น: "false"

คลาสกฎการทิ้ง

แท็ก bazel_monitoring

--[no]rules ค่าเริ่มต้น: "false"

กฎการทิ้ง รวมถึงจำนวนและการใช้หน่วยความจำ (หากมีการติดตามหน่วยความจำ)

แท็ก bazel_monitoring

--skyframe=<off, summary, count, value, deps, rdeps, function_graph, active_directories or active_directories_frontier_deps> ค่าเริ่มต้น: "ปิด"

ทิ้งกราฟ Skyframe

แท็ก bazel_monitoring

--skykey_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: ".*"

ตัวกรองนิพจน์ทั่วไปของชื่อ SkyKey ที่จะแสดง ใช้กับ --skyframe=deps, rdeps, function_graph เท่านั้น

แท็ก bazel_monitoring

--skylark_memory=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ส่งออกโปรไฟล์หน่วยความจำที่เข้ากันได้กับ pprof ไปยังเส้นทางที่ระบุ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/google/pprof

แท็ก bazel_monitoring

ตัวเลือกการดึงข้อมูล

รับค่าตัวเลือกทั้งหมดจาก test

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--[no]all ค่าเริ่มต้น: "false"

ดึงข้อมูลที่เก็บภายนอกทั้งหมดที่จำเป็นสำหรับการสร้างเป้าหมายหรือที่เก็บ โดยจะเป็นค่าเริ่มต้นหากไม่ได้ระบุแฟล็กและอาร์กิวเมนต์อื่นๆ จะใช้งานได้เมื่อเปิด --enable_bzlmod เท่านั้น

แท็ก changes_inputs

--[no]keep_going [-k] ค่าเริ่มต้น: "false"

ดำเนินการต่อให้ได้มากที่สุดหลังจากเกิดข้อผิดพลาด แม้ว่าจะวิเคราะห์เป้าหมายที่ล้มเหลวและเป้าหมายที่ขึ้นอยู่กับเป้าหมายดังกล่าวไม่ได้ แต่ก็วิเคราะห์ข้อกำหนดเบื้องต้นอื่นๆ ของเป้าหมายเหล่านี้ได้

แท็ก 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"> ค่าเริ่มต้น: "auto"

จำนวนเธรดแบบขนานที่จะใช้ในระยะการโหลด/การวิเคราะห์ รับค่าจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะตั้งค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์ ต้องไม่ต่ำกว่า 1

แท็ก bazel_internal_configuration

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและความหมายของ Bzlmod:
--[no]configure ค่าเริ่มต้น: "false"

ดึงข้อมูลเฉพาะที่เก็บที่ทำเครื่องหมายเป็น "กำหนดค่า" เพื่อวัตถุประสงค์ในการกำหนดค่าระบบ จะใช้งานได้เมื่อเปิด --enable_bzlmod เท่านั้น

แท็ก changes_inputs

--[no]force ค่าเริ่มต้น: "false"

หากมีที่เก็บอยู่แล้ว ให้ละเว้นที่เก็บนั้นและบังคับให้ดึงข้อมูลที่เก็บอีกครั้ง จะใช้งานได้เมื่อเปิด --enable_bzlmod เท่านั้น

แท็ก changes_inputs

--repo=<a string> มีการสะสมการใช้งานหลายครั้ง

ดึงข้อมูลเฉพาะที่เก็บที่ระบุ ซึ่งอาจเป็น {@apparent_repo_name} หรือ {@@canonical_repo_name} จะใช้งานได้เมื่อเปิด --enable_bzlmod เท่านั้น

แท็ก changes_inputs

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--[no]experimental_persistent_aar_extractor ค่าเริ่มต้น: "false"

เปิดใช้เครื่องมือแยก AAR แบบถาวรโดยใช้ Worker

แท็ก execution, experimental

--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_split_coverage_postprocessing ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะเรียกใช้การประมวลผลภายหลังของ Coverage สำหรับการทดสอบในกระบวนการใหม่

แท็ก execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--persistent_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android อย่างต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

แท็ก host_machine_resource_optimizations, execution

--persistent_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android แบบหลายรายการที่ต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบมัลติเพล็กซ์ถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_tools

เปิดใช้เครื่องมือ Android แบบถาวรและแบบมัลติเพล็กซ์ (dexing, desugaring, การประมวลผลทรัพยากร)

ขยายเป็น
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--android_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์เป้าหมายของ Android

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_manifest_merger=<legacy, android or force_android> ค่าเริ่มต้น: "android"

เลือกการผสานไฟล์ Manifest ที่จะใช้สำหรับกฎ android_binary Flag เพื่อช่วยในการเปลี่ยนไปใช้เครื่องมือผสานรวมไฟล์ Manifest ของ Android จากเครื่องมือผสานรวมเดิม

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_platforms=<a build target label> ค่าเริ่มต้น: ""

ตั้งค่าแพลตฟอร์มที่เป้าหมาย android_binary ใช้ หากระบุหลายแพลตฟอร์ม ไบนารีจะเป็น APK แบบ Fat ซึ่งมีไบนารีเนทีฟสำหรับแต่ละแพลตฟอร์มเป้าหมายที่ระบุ

แท็ก changes_inputs, loading_and_analysis, loses_incremental_state

--cc_output_directory_tag=<a string> ค่าเริ่มต้น: ""

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก affects_outputs

--compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์ C++ ที่จะใช้คอมไพล์เป้าหมาย

แท็ก loading_and_analysis, execution

--coverage_output_generator=<a build target label> default: "@bazel_tools//tools/test:lcov_merger"

ตำแหน่งของไบนารีที่ใช้ในการประมวลผลรายงานความครอบคลุมดิบ ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:lcov_merger"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

ตำแหน่งของไบนารีที่ใช้สร้างรายงานความครอบคลุม ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:coverage_report_generator"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

ตำแหน่งของไฟล์สนับสนุนที่จำเป็นในอินพุตของการดำเนินการทดสอบทุกครั้งที่รวบรวมความครอบคลุมของโค้ด ค่าเริ่มต้นคือ "//tools/test:coverage_support"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--custom_malloc=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุการติดตั้งใช้งาน malloc ที่กำหนดเอง การตั้งค่านี้จะลบล้างแอตทริบิวต์ malloc ในกฎการสร้าง

แท็ก changes_inputs, affects_outputs

--[no]experimental_include_xcode_execution_requirements ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode:{version}" ลงในการดำเนินการ Xcode ทุกรายการ หากเวอร์ชัน Xcode มีป้ายกำกับที่มีขีดกลาง ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode-label:{version_label}" ด้วย

แท็ก loses_incremental_state, loading_and_analysis, execution, experimental

--[no]experimental_prefer_mutual_xcode ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้ Xcode เวอร์ชันล่าสุดที่พร้อมใช้งานทั้งในเครื่องและจากระยะไกล หากเป็นเท็จ หรือหากไม่มีเวอร์ชันที่ใช้ร่วมกันได้ ให้ใช้ Xcode เวอร์ชันในเครื่องที่เลือกผ่าน xcode-select

แท็ก loses_incremental_state, experimental

--extra_execution_platforms=<comma-separated list of options> ค่าเริ่มต้น: ""

แพลตฟอร์มที่พร้อมใช้งานเป็นแพลตฟอร์มการดำเนินการเพื่อเรียกใช้การดำเนินการ คุณระบุแพลตฟอร์มได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณาแพลตฟอร์มเหล่านี้ก่อนแพลตฟอร์มที่ประกาศในไฟล์ WORKSPACE โดย register_execution_platforms() คุณตั้งค่าตัวเลือกนี้ได้เพียงครั้งเดียวเท่านั้น และอินสแตนซ์ในภายหลังจะลบล้างการตั้งค่าแฟล็กก่อนหน้า

แท็ก execution

--extra_toolchains=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

กฎ Toolchain ที่ควรพิจารณาในระหว่างการแก้ปัญหา Toolchain คุณระบุ Toolchain ได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณา Toolchain เหล่านี้ก่อน Toolchain ที่ประกาศไว้ในไฟล์ WORKSPACE โดย register_toolchains()

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

ป้ายกำกับสำหรับไลบรารี libc ที่เช็คอินแล้ว ค่าเริ่มต้นจะเลือกโดยเครื่องมือ Crosstool Toolchain และคุณแทบจะไม่ต้องลบล้างค่านี้เลย

แท็ก action_command_lines, affects_outputs

--host_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

แฟล็กที่ไม่มีการดำเนินการ จะนำออกในการเปิดตัวรุ่นต่อๆ ไป

แท็ก loading_and_analysis, execution

--host_grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุ การตั้งค่านี้จะลบล้างไดเรกทอรีระดับบนสุดของ libc (--grte_top) สำหรับการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายระบบโฮสต์

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

--[no]incompatible_builtin_objc_strip_action ค่าเริ่มต้น: "จริง"

จะปล่อยการดำเนินการ Strip เป็นส่วนหนึ่งของการลิงก์ objc หรือไม่

แท็ก action_command_lines, incompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่เปิดใช้ฟีเจอร์ "โฮสต์" และ "ไม่ใช่โฮสต์" ในเครื่องมือ C++ (ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/7407)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enable_apple_toolchain_resolution ค่าเริ่มต้น: "false"

ใช้การแก้ปัญหา Toolchain เพื่อเลือก Apple SDK สำหรับกฎ Apple (Starlark และเนทีฟ)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_remove_legacy_whole_archive ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่ลิงก์ทรัพยากร Dependency ของไลบรารีเป็นทั้งอาร์ไคฟ์โดยค่าเริ่มต้น (ดูวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/7362)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_strip_executable_safely ค่าเริ่มต้น: "false"

หากเป็นจริง การลบข้อมูลการดำเนินการสำหรับไฟล์ที่เรียกใช้งานได้จะใช้แฟล็ก -x ซึ่งจะไม่ทำให้การแก้ปัญหาเกี่ยวกับสัญลักษณ์แบบไดนามิกหยุดทำงาน

แท็ก action_command_lines, incompatible_change

--[no]interface_shared_objects ค่าเริ่มต้น: "จริง"

ใช้ออบเจ็กต์ที่แชร์ของอินเทอร์เฟซหากชุดเครื่องมือรองรับ ปัจจุบัน Toolchain ELF ทั้งหมดรองรับการตั้งค่านี้

แท็ก loading_and_analysis, affects_outputs, affects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ iOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน iOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ iOS จาก "xcode_version"

แท็ก loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ macOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน macOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ macOS จาก "xcode_version"

แท็ก loses_incremental_state

--minimum_os_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันระบบปฏิบัติการขั้นต่ำที่การคอมไพล์ของคุณกำหนดเป้าหมาย

แท็ก loading_and_analysis, affects_outputs

--platform_mappings=<a main workspace-relative path> ค่าเริ่มต้น: ""

ตำแหน่งของไฟล์การแมปที่อธิบายว่าควรใช้แพลตฟอร์มใดหากไม่ได้ตั้งค่า หรือควรตั้งค่า Flag ใดเมื่อมีแพลตฟอร์มอยู่แล้ว ต้องสัมพันธ์กับรูทของพื้นที่ทำงานหลัก ค่าเริ่มต้นคือ "platform_mappings" (ไฟล์ที่อยู่ใต้รูทของพื้นที่ทำงานโดยตรง)

แท็ก affects_outputs, changes_inputs, loading_and_analysis, non_configurable

--platforms=<a build target label> ค่าเริ่มต้น: ""

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายแพลตฟอร์มเป้าหมายสำหรับคำสั่งปัจจุบัน

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--python_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ของตัวแปล Python ที่เรียกใช้เพื่อเรียกใช้เป้าหมาย Python ในแพลตฟอร์มเป้าหมาย เลิกใช้งานแล้ว ปิดใช้โดย --incompatible_use_python_toolchains

แท็ก loading_and_analysis, affects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ tvOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน tvOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ tvOS จาก "xcode_version"

แท็ก loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition ค่าเริ่มต้น: "false"

ทำให้ apple_crosstool_transition กลับไปใช้ค่าของแฟล็ก --platforms แทน --cpu แบบเดิมเมื่อจำเป็น

แท็ก loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ watchOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน watchOS หากไม่ได้ระบุ ให้ใช้ SDK เวอร์ชันเริ่มต้นของ watchOS จาก "xcode_version"

แท็ก loses_incremental_state

--xcode_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ จะใช้ Xcode เวอร์ชันที่ระบุสำหรับการดำเนินการบิลด์ที่เกี่ยวข้อง หากไม่ได้ระบุ ระบบจะใช้ Xcode เวอร์ชันเริ่มต้นของตัวดำเนินการ

แท็ก loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ป้ายกำกับของกฎ xcode_config ที่จะใช้ในการเลือกเวอร์ชัน Xcode ในการกำหนดค่าบิลด์

แท็ก loses_incremental_state, loading_and_analysis

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]apple_generate_dsym ค่าเริ่มต้น: "false"

จะสร้างไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่อง (.dSYM) หรือไม่

แท็ก affects_outputs, action_command_lines

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]build_test_dwp ค่าเริ่มต้น: "false"

หากเปิดใช้ เมื่อสร้างการทดสอบ C++ แบบคงที่และใช้ฟิชชัน ระบบจะสร้างไฟล์ .dwp สำหรับไบนารีการทดสอบโดยอัตโนมัติด้วย

แท็ก loading_and_analysis, affects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.h"

ตั้งค่าคำต่อท้ายของไฟล์ส่วนหัวที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.cc"

ตั้งค่าคำต่อท้ายของไฟล์ต้นฉบับที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info ค่าเริ่มต้น: "false"

เรียกใช้การดำเนินการเพิ่มเติมสำหรับ API Java เวอร์ชันอื่นใน proto_library

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_save_feature_state ค่าเริ่มต้น: "false"

บันทึกสถานะของฟีเจอร์ที่เปิดใช้และที่ขอเป็นเอาต์พุตของการคอมไพล์

แท็ก affects_outputs, experimental

--fission=<a set of compilation modes> ค่าเริ่มต้น: "no"

ระบุโหมดการคอมไพล์ที่ใช้ฟิชชันสำหรับการคอมไพล์และการลิงก์ C++ อาจเป็นชุดค่าผสมใดก็ได้ของ {'fastbuild', 'dbg', 'opt'} หรือค่าพิเศษ 'yes' เพื่อเปิดใช้ทุกโหมด และ 'no' เพื่อปิดใช้ทุกโหมด

แท็ก loading_and_analysis, action_command_lines, affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

--[no]objc_generate_linkmap ค่าเริ่มต้น: "false"

ระบุว่าจะสร้างไฟล์ Linkmap หรือไม่

แท็ก affects_outputs

--[no]save_temps ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ระบบจะบันทึกเอาต์พุตชั่วคราวจาก gcc ซึ่งรวมถึงไฟล์ .s (โค้ดแอสเซมเบลอร์), ไฟล์ .i (C ที่ประมวลผลล่วงหน้า) และไฟล์ .ii (C++ ที่ประมวลผลล่วงหน้า)

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]android_databinding_use_androidx ค่าเริ่มต้น: "จริง"

สร้างไฟล์ Data Binding ที่เข้ากันได้กับ AndroidX ซึ่งใช้ได้กับ Data Binding v2 เท่านั้น แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]android_databinding_use_v3_4_args ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android กับอาร์กิวเมนต์ 3.4.0 แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--android_dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "ปิด"

กำหนดว่าจะลิงก์ C++ deps ของกฎ Android แบบไดนามิกหรือไม่เมื่อ cc_binary ไม่ได้สร้างไลบรารีที่ใช้ร่วมกันอย่างชัดเจน "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก affects_outputs, loading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> ค่าเริ่มต้น: "ตามตัวอักษร"

กำหนดลำดับของไฟล์ Manifest ที่ส่งผ่านไปยังโปรแกรมผสานไฟล์ Manifest สำหรับไบนารีของ Android ALPHABETICAL หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่เกี่ยวข้องกับ execroot ALPHABETICAL_BY_CONFIGURATION หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่สัมพันธ์กับไดเรกทอรีการกำหนดค่าภายในไดเรกทอรีเอาต์พุต DEPENDENCY หมายความว่าไฟล์ Manifest จะเรียงตามลำดับโดยไฟล์ Manifest ของแต่ละไลบรารีจะอยู่ก่อนไฟล์ Manifest ของการอ้างอิง

แท็ก action_command_lines, execution

--[no]android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis

--[no]build_python_zip ค่าเริ่มต้น: "auto"

สร้างไฟล์ ZIP ที่ปฏิบัติการได้ของ Python โดยเปิดใน Windows และปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--catalyst_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple Catalyst

แท็ก loses_incremental_state, loading_and_analysis

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C

แท็ก action_command_lines, affects_outputs

--copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc

แท็ก action_command_lines, affects_outputs

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--cs_fdo_absolute_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ CSFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อเส้นทางสัมบูรณ์ของไฟล์ ZIP ที่มีไฟล์โปรไฟล์ ไฟล์ LLVM โปรไฟล์แบบดิบ หรือไฟล์ LLVM โปรไฟล์ที่จัดทำดัชนี

แท็ก affects_outputs

--cs_fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO ที่คำนึงถึงบริบทเป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--cs_fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

cs_fdo_profile ที่แสดงโปรไฟล์ที่คำนึงถึงบริบทซึ่งจะใช้ในการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C++

แท็ก action_command_lines, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "default"

กำหนดว่าจะลิงก์ไบนารี C++ แบบไดนามิกหรือไม่ "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก loading_and_analysis, affects_outputs

--[no]enable_propeller_optimize_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ Propeller Optimize จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_remaining_fdo_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ FDO จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_android_compress_java_resources ค่าเริ่มต้น: "false"

บีบอัดทรัพยากร Java ใน APK

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_databinding_v2 ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_rewrite_dexes_with_rex ค่าเริ่มต้น: "false"

ใช้เครื่องมือ rex เพื่อเขียนไฟล์ dex ใหม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_objc_fastbuild_options=<comma-separated list of options> ค่าเริ่มต้น: "-O0,-DDEBUG=1"

ใช้สตริงเหล่านี้เป็นตัวเลือกคอมไพเลอร์ objc fastbuild

แท็ก action_command_lines

--[no]experimental_omitfp ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้ libunwind สำหรับการคลายสแต็ก และคอมไพล์ด้วย -fomit-frame-pointer และ -fasynchronous-unwind-tables

แท็ก action_command_lines, affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_py_binaries_include_label ค่าเริ่มต้น: "false"

เป้าหมาย py_binary จะมีป้ายกำกับของตัวเองแม้ว่าจะปิดใช้การประทับเวลาไว้ก็ตาม

แท็ก affects_outputs, experimental

--[no]experimental_use_llvm_covmap ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลแผนที่ความครอบคลุมของ llvm-cov แทน gcov เมื่อเปิดใช้ collect_code_coverage

แท็ก changes_inputs, affects_outputs, loading_and_analysis, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO เป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--fdo_optimize=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ FDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อไฟล์ ZIP ที่มีโครงสร้างไฟล์ .gcda, ไฟล์ AFDO ที่มีโปรไฟล์อัตโนมัติ หรือไฟล์โปรไฟล์ LLVM นอกจากนี้ แฟล็กนี้ยังยอมรับไฟล์ที่ระบุเป็นป้ายกำกับ (เช่น //foo/bar:file.afdo - คุณอาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้อง) และป้ายกำกับที่ชี้ไปยังเป้าหมาย fdo_profile กฎ fdo_profile จะมีผลแทนฟีเจอร์นี้

แท็ก affects_outputs

--fdo_prefetch_hints=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้คำแนะนำการดึงข้อมูลล่วงหน้าของแคช

แท็ก affects_outputs

--fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

fdo_profile ที่แสดงโปรไฟล์ที่จะใช้สำหรับการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--[no]force_pic ค่าเริ่มต้น: "false"

หากเปิดใช้ การคอมไพล์ C++ ทั้งหมดจะสร้างโค้ดที่ไม่ขึ้นกับตำแหน่ง ("-fPIC") ลิงก์จะเลือกใช้ไลบรารีที่สร้างไว้ล่วงหน้าแบบ PIC มากกว่าไลบรารีที่ไม่ใช่ PIC และลิงก์จะสร้างไฟล์ปฏิบัติการที่ไม่ขึ้นกับตำแหน่ง ("-pie")

แท็ก loading_and_analysis, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C เมื่อคอมไพล์ไฟล์ต้นฉบับ C (แต่ไม่ใช่ C++) ในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C++ สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--host_linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Linker เมื่อลิงก์เครื่องมือในการกำหนดค่า Exec

แท็ก action_command_lines, affects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่ใช้ร่วมกันได้สำหรับเป้าหมายโฮสต์ หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังคอมไพเลอร์ C/C++ อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ในการกำหนดค่า exec ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก action_command_lines, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

iOS เวอร์ชันขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "ios_sdk_version"

แท็ก loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาเพื่อสร้าง ios_application ผลลัพธ์คือไบนารีแบบสากลที่มีสถาปัตยกรรมที่ระบุทั้งหมด

แท็ก loses_incremental_state, loading_and_analysis

--[no]legacy_whole_archive ค่าเริ่มต้น: "จริง"

เลิกใช้งานแล้ว ถูกแทนที่ด้วย --incompatible_remove_legacy_whole_archive (ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7362) เมื่อเปิดอยู่ ให้ใช้ --whole-archive สำหรับกฎ cc_binary ที่มี linkshared=True และ linkstatic=True หรือ '-static' ใน linkopts การตั้งค่านี้ใช้เพื่อให้มีความเข้ากันได้แบบย้อนหลังเท่านั้น ทางเลือกที่ดีกว่าคือการใช้ alwayslink=1 ในกรณีที่จำเป็น

แท็ก action_command_lines, affects_outputs, deprecated

--linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อลิงก์

แท็ก action_command_lines, affects_outputs

--ltobackendopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนแบ็กเอนด์ของ LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--ltoindexopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนการจัดทำดัชนี LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--macos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple macOS

แท็ก loses_incremental_state, loading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่เข้ากันได้สำหรับเป้าหมาย หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก loses_incremental_state

--memprof_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้โปรไฟล์ memprof

แท็ก affects_outputs

--[no]objc_debug_with_GLIBCXX ค่าเริ่มต้น: "false"

หากตั้งค่าไว้และตั้งค่าโหมดการคอมไพล์เป็น "dbg" ให้กำหนด GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC และ GLIBCPP_CONCEPT_CHECKS

แท็ก action_command_lines

--[no]objc_enable_binary_stripping ค่าเริ่มต้น: "false"

ว่าจะลบสัญลักษณ์และโค้ดที่ไม่ได้ใช้ในไบนารีที่ลิงก์หรือไม่ ระบบจะทำการลบไบนารีออกหากมีการระบุทั้งแฟล็กนี้และ --compilation_mode=opt

แท็ก action_command_lines

--objccopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ Objective-C/C++

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมเพื่อส่งไปยัง gcc อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังแบ็กเอนด์ LTO อย่างเลือก (ภายใต้ --features=thin_lto) เมื่อคอมไพล์ออบเจ็กต์แบ็กเอนด์บางรายการ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดย regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่งของแบ็กเอนด์ LTO ของไฟล์.o ทั้งหมดใน //foo/ ยกเว้น bar.o

แท็ก action_command_lines, affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--propeller_optimize=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ Propeller เพื่อเพิ่มประสิทธิภาพเป้าหมายการบิลด์ โปรไฟล์ Propeller ต้องประกอบด้วยไฟล์อย่างน้อย 1 ใน 2 ไฟล์ ได้แก่ โปรไฟล์ cc และโปรไฟล์ ld แฟล็กนี้ยอมรับป้ายกำกับการสร้างซึ่งต้องอ้างอิงไฟล์อินพุตโปรไฟล์ Propeller เช่น ไฟล์ BUILD ที่กำหนดป้ายกำกับใน a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",) อาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้องเพื่อให้ Bazel มองเห็นไฟล์เหล่านี้ ต้องใช้ตัวเลือกในรูปแบบ --propeller_optimize=//a/b:propeller_profile

แท็ก action_command_lines, affects_outputs

--propeller_optimize_absolute_cc_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางสัมบูรณ์ของไฟล์ cc_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางแบบสัมบูรณ์ของไฟล์ ld_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]share_native_deps ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะแชร์ไลบรารีที่มาพร้อมเครื่องซึ่งมีฟังก์ชันการทำงานเหมือนกันในกลุ่มเป้าหมายต่างๆ

แท็ก loading_and_analysis, affects_outputs

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

--strip=<always, sometimes or never> ค่าเริ่มต้น: "บางครั้ง"

ระบุว่าจะลบไบนารีและไลบรารีที่ใช้ร่วมกันหรือไม่ (ใช้ "-Wl,--strip-debug") ค่าเริ่มต้นของ "บางครั้ง" หมายถึงการลบออกหาก --compilation_mode=fastbuild

แท็ก affects_outputs

--stripopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง strip เมื่อสร้างไบนารี "<name>.stripped"

แท็ก action_command_lines, affects_outputs

--tvos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple tvOS

แท็ก loses_incremental_state, loading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน tvOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "tvos_sdk_version"

แท็ก loses_incremental_state

--visionos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple visionOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple watchOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน watchOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ระบุ ให้ใช้ "watchos_sdk_version"

แท็ก loses_incremental_state

--xbinary_fdo=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ XbinaryFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อของโปรไฟล์ไบนารีข้ามเริ่มต้น เมื่อใช้ตัวเลือกนี้ร่วมกับ --fdo_instrument/--fdo_optimize/--fdo_profile ตัวเลือกเหล่านั้นจะมีผลเสมอราวกับว่าไม่ได้ระบุ xbinary_fdo

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]desugar_for_android ค่าเริ่มต้น: "จริง"

จะแปลงไบต์โค้ด Java 8 ก่อน dexing หรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]desugar_java8_libs ค่าเริ่มต้น: "false"

จะรวมไลบรารี Java 8 ที่รองรับไว้ในแอปสำหรับอุปกรณ์รุ่นเดิมหรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_check_desugar_deps ค่าเริ่มต้น: "จริง"

เลือกว่าจะตรวจสอบการแยกส่วนที่ถูกต้องในระดับไบนารีของ Android หรือไม่

แท็ก eagerness_to_exit, loading_and_analysis, experimental

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--experimental_one_version_enforcement=<off, warning or error> ค่าเริ่มต้น: "ปิด"

เมื่อเปิดใช้ ให้บังคับว่ากฎ java_binary ต้องมีไฟล์คลาสเวอร์ชันเดียวกันในเส้นทางคลาสได้ไม่เกิน 1 รายการ การบังคับใช้นี้อาจทำให้บิลด์ใช้งานไม่ได้ หรืออาจส่งผลให้เกิดคำเตือนเท่านั้น

แท็ก loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "default"

หากเป็นจริง จะตรวจสอบว่าเป้าหมาย Java ประกาศเป้าหมายทั้งหมดที่ใช้โดยตรงเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_native_android_rules ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะปิดใช้การใช้กฎ Android ดั้งเดิมโดยตรง โปรดใช้กฎ Android ของ Starlark จาก https://github.com/bazelbuild/rules_android

แท็ก eagerness_to_exit, incompatible_change

--[no]incompatible_disable_native_apple_binary_rule ค่าเริ่มต้น: "false"

ไม่มีการดำเนินการใดๆ เก็บไว้ที่นี่เพื่อความเข้ากันได้แบบย้อนหลัง

แท็ก eagerness_to_exit, incompatible_change

--[no]one_version_enforcement_on_java_tests ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้และตั้งค่า experimental_one_version_enforcement เป็นค่าที่ไม่ใช่ NONE ให้บังคับใช้เวอร์ชันเดียวกับเป้าหมาย java_test คุณปิดใช้ Flag นี้ได้เพื่อปรับปรุงประสิทธิภาพการทดสอบแบบเพิ่มขึ้น โดยอาจทำให้พลาดการละเมิดแบบเวอร์ชันเดียวที่อาจเกิดขึ้น

แท็ก loading_and_analysis

--python_native_rules_allowlist=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

รายการที่อนุญาต (เป้าหมาย package_group) ที่จะใช้เมื่อบังคับใช้ --incompatible_python_disallow_native_rules

แท็ก loading_and_analysis

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "error"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายที่ใช้โดยตรงทั้งหมดเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--strict_public_imports=<off, warn, error, strict or default> ค่าเริ่มต้น: "ปิด"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายทั้งหมดที่ใช้ใน "import public" อย่างชัดเจนว่าส่งออกแล้ว

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--[no]strict_system_includes ค่าเริ่มต้น: "false"

หากเป็นจริง คุณจะต้องประกาศส่วนหัวที่พบผ่านเส้นทางของระบบ (-isystem) ด้วย

แท็ก loading_and_analysis, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกที่มีผลต่อเอาต์พุตการลงนามของบิลด์
--apk_signing_method=<v1, v2, v1_v2 or v4> ค่าเริ่มต้น: "v1_v2"

การติดตั้งใช้งานเพื่อใช้ในการรับรอง APK

แท็ก action_command_lines, affects_outputs, loading_and_analysis

--[no]device_debug_entitlements ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้และโหมดการคอมไพล์ไม่ใช่ "opt" แอป objc จะมีสิทธิ์การแก้ไขข้อบกพร่องเมื่อลงนาม

แท็ก changes_inputs

--ios_signing_cert_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อใบรับรองที่จะใช้สำหรับการลงนามใน iOS หากไม่ได้ตั้งค่าไว้ ระบบจะเปลี่ยนกลับไปใช้โปรไฟล์การจัดสรร อาจเป็นค่ากำหนดข้อมูลประจำตัวในพวงกุญแจของใบรับรองหรือ (สตริงย่อย) ของชื่อทั่วไปของใบรับรอง ตามหน้า Man ของ codesign (ข้อมูลประจำตัวในการลงนาม)

แท็ก action_command_lines

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_disallow_sdk_frameworks_attributes ค่าเริ่มต้น: "false"

หากเป็น "จริง" จะไม่อนุญาตแอตทริบิวต์ sdk_frameworks และ weak_sdk_frameworks ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

หากเป็นจริง ให้ตั้งค่าเริ่มต้นเป็นจริงสำหรับแอตทริบิวต์ alwayslink ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_python_disallow_native_rules ค่าเริ่มต้น: "false"

เมื่อเป็นจริง จะเกิดข้อผิดพลาดเมื่อใช้กฎ py_* ในตัว แต่ควรใช้กฎ rule_python แทน ดูข้อมูลเพิ่มเติมและวิธีการย้ายข้อมูลได้ที่ https://github.com/bazelbuild/bazel/issues/17773

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure ค่าเริ่มต้น: "false"

หากเป็นจริง การดำเนินการ dex2oat ที่ล้มเหลวจะทำให้บิลด์หยุดทำงานแทนที่จะเรียกใช้ dex2oat ในระหว่างรันไทม์ของการทดสอบ

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ลบล้างจำนวนทรัพยากรเริ่มต้นสำหรับการทดสอบ รูปแบบที่คาดไว้คือ <resource>=<value> หากระบุตัวเลขบวกตัวเดียวเป็น <value> ระบบจะลบล้างทรัพยากรเริ่มต้นสำหรับขนาดการทดสอบทั้งหมด หากระบุตัวเลข 4 ตัวที่คั่นด้วยคอมมา ตัวเลขเหล่านั้นจะลบล้างจำนวนทรัพยากรสำหรับขนาดการทดสอบเล็ก กลาง ใหญ่ และใหญ่มากตามลำดับ นอกจากนี้ ค่าอาจเป็น HOST_RAM/HOST_CPU ตามด้วย [-|]<float> (เช่น memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4) ก็ได้ ทรัพยากรทดสอบเริ่มต้นที่ระบุโดยแฟล็กนี้จะถูกแทนที่ด้วยทรัพยากรที่ชัดเจนซึ่งระบุไว้ในแท็ก

--[no]experimental_android_use_parallel_dex2oat ค่าเริ่มต้น: "false"

ใช้ dex2oat แบบคู่ขนานเพื่อเพิ่มความเร็ว android_test

แท็ก loading_and_analysis, host_machine_resource_optimizations, experimental

--[no]ios_memleaks ค่าเริ่มต้น: "false"

เปิดใช้การตรวจสอบหน่วยความจำรั่วในเป้าหมาย ios_test

แท็ก action_command_lines

--ios_simulator_device=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

อุปกรณ์ที่จะจำลองเมื่อเรียกใช้แอปพลิเคชัน iOS ในโปรแกรมจำลอง เช่น "iPhone 6" คุณดูรายการอุปกรณ์ได้โดยเรียกใช้ "xcrun simctl list devicetypes" ในเครื่องที่จะเรียกใช้โปรแกรมจำลอง

แท็ก test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันของ iOS ที่จะเรียกใช้ในโปรแกรมจำลองเมื่อเรียกใช้หรือทดสอบ ระบบจะละเว้นพารามิเตอร์นี้สำหรับกฎ ios_test หากมีการระบุอุปกรณ์เป้าหมายในกฎ

แท็ก test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบุจำนวนครั้งที่จะเรียกใช้การทดสอบแต่ละครั้ง หากการพยายามดังกล่าวไม่สำเร็จไม่ว่าด้วยเหตุผลใดก็ตาม ระบบจะถือว่าการทดสอบทั้งหมดไม่สำเร็จ โดยปกติแล้วค่าที่ระบุจะเป็นเพียงจำนวนเต็ม ตัวอย่าง: --runs_per_test=3 จะเรียกใช้การทดสอบทั้งหมด 3 ครั้ง ไวยากรณ์อื่น: regex_filter@runs_per_test โดย runs_per_test หมายถึงค่าจำนวนเต็ม และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ตัวอย่าง: --runs_per_test=//foo/.,-//foo/bar/.@3 จะเรียกใช้การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบที่อยู่ภายใต้ foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ระบบจะทำการทดสอบเพียงครั้งเดียว

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมที่จะแทรกลงในสภาพแวดล้อมของโปรแกรมเรียกใช้การทดสอบ ตัวแปรอาจระบุโดย <code>name</code> ในกรณีนี้ ค่าจะอ่านจากสภาพแวดล้อมไคลเอ็นต์ Bazel หรือโดยคู่ <code>name=value</code> คุณยกเลิกการตั้งค่าตัวแปรที่ตั้งไว้ก่อนหน้านี้ได้ผ่าน <code>=name</code> คุณใช้ตัวเลือกนี้ได้หลายครั้งเพื่อระบุตัวแปรหลายรายการ ใช้โดยคำสั่ง "bazel test" เท่านั้น

แท็ก test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> ค่าเริ่มต้น: "-1"

ลบล้างค่าการหมดเวลาทดสอบเริ่มต้นสำหรับการหมดเวลาทดสอบ (เป็นวินาที) หากระบุค่าจำนวนเต็มบวกค่าเดียว ค่าดังกล่าวจะลบล้างหมวดหมู่ทั้งหมด หากระบุจำนวนเต็ม 4 รายการที่คั่นด้วยคอมมา ระบบจะลบล้างการหมดเวลาสำหรับระยะเวลาสั้น ปานกลาง ยาว และไม่มีกำหนด (ตามลำดับ) ไม่ว่าจะอยู่ในรูปแบบใด ค่า -1 จะบอกให้ Blaze ใช้การหมดเวลาเริ่มต้นสำหรับหมวดหมู่นั้น

--[no]zip_undeclared_test_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเก็บเอาต์พุตการทดสอบที่ไม่ได้ประกาศไว้ในไฟล์ ZIP

แท็ก test_runner

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--[no]experimental_filter_library_jar_with_program_jar ค่าเริ่มต้น: "false"

กรอง ProGuard ProgramJar เพื่อนำคลาสที่อยู่ใน LibraryJar ออก

แท็ก action_command_lines, experimental

--[no]experimental_inmemory_dotd_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์ .d ของ C++ ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_inmemory_jdeps_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์การอ้างอิง (.jdeps) ที่สร้างจากการคอมไพล์ Java ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_retain_test_configuration_across_testonly ค่าเริ่มต้น: "false"

เมื่อเปิดใช้แล้ว --trim_test_configuration จะไม่ตัดการกำหนดค่าการทดสอบสำหรับกฎที่ทำเครื่องหมาย testonly=1 ซึ่งมีจุดประสงค์เพื่อลดปัญหาความขัดแย้งในการดำเนินการเมื่อกฎที่ไม่ใช่การทดสอบขึ้นอยู่กับกฎ cc_test จะไม่มีผลหาก --trim_test_configuration เป็นเท็จ

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_unsupported_and_brittle_include_scanning ค่าเริ่มต้น: "false"

ว่าจะจำกัดอินพุตให้เหลือเฉพาะการคอมไพล์ C/C++ โดยการแยกวิเคราะห์บรรทัด #include จากไฟล์อินพุตหรือไม่ ซึ่งจะช่วยปรับปรุงประสิทธิภาพและส่วนเพิ่มด้วยการลดขนาดของทรีอินพุตการคอมไพล์ อย่างไรก็ตาม การดำเนินการนี้อาจทำให้บิลด์หยุดทำงานได้เนื่องจากเครื่องมือสแกนการรวมไม่ได้ใช้ความหมายของตัวประมวลผล C ล่วงหน้าอย่างเต็มที่ โดยเฉพาะอย่างยิ่ง เครื่องมือนี้ไม่เข้าใจคำสั่ง #include แบบไดนามิกและไม่สนใจตรรกะแบบมีเงื่อนไขของตัวประมวลผลล่วงหน้า คุณต้องรับความเสี่ยงของการใช้งานเอง เราจะปิดปัญหาที่เกี่ยวข้องกับการแจ้งว่าไม่เหมาะสมนี้ทั้งหมด

แท็ก loading_and_analysis, execution, changes_inputs, experimental

--[no]incremental_dexing ค่าเริ่มต้น: "จริง"

ทำงานส่วนใหญ่ในการแยก dexing สำหรับไฟล์ Jar แต่ละไฟล์

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]objc_use_dotd_pruning ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ระบบจะใช้ไฟล์ .d ที่ clang ปล่อยออกมาเพื่อตัดชุดอินพุตที่ส่งไปยังการคอมไพล์ objc

แท็ก changes_inputs, loading_and_analysis

--[no]process_headers_in_dependencies ค่าเริ่มต้น: "false"

เมื่อสร้างเป้าหมาย //a:a ให้ประมวลผลส่วนหัวในเป้าหมายทั้งหมดที่ //a:a ขึ้นอยู่กับ (หากเปิดใช้การประมวลผลส่วนหัวสำหรับเครื่องมือ Toolchain)

แท็ก execution

--[no]trim_test_configuration ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ ตัวเลือกที่เกี่ยวข้องกับการทดสอบจะล้างออกใต้ระดับบนสุดของบิลด์ เมื่อเปิดใช้ฟีเจอร์นี้ คุณจะสร้างการทดสอบเป็นทรัพยากร Dependency ของกฎที่ไม่ใช่การทดสอบไม่ได้ แต่การเปลี่ยนแปลงตัวเลือกที่เกี่ยวข้องกับการทดสอบจะไม่ทำให้ระบบวิเคราะห์กฎที่ไม่ใช่การทดสอบซ้ำ

แท็ก loading_and_analysis, loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: "-.*"

พิมพ์ข้อมูลการแก้ไขข้อบกพร่องระหว่างการแก้ไข Toolchain โดยแฟล็กจะใช้นิพจน์ทั่วไป ซึ่งจะตรวจสอบกับประเภท Toolchain และเป้าหมายที่เฉพาะเจาะจงเพื่อดูว่าควรแก้ไขข้อบกพร่องของรายการใด คุณคั่นนิพจน์ทั่วไปหลายรายการด้วยคอมมาได้ จากนั้นระบบจะตรวจสอบนิพจน์ทั่วไปแต่ละรายการแยกกัน หมายเหตุ: เอาต์พุตของฟีเจอร์นี้มีความซับซ้อนมากและอาจมีประโยชน์เฉพาะผู้เชี่ยวชาญด้านการแก้ไข Toolchain เท่านั้น

แท็ก terminal_output

--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

--[no]incompatible_default_to_explicit_init_py ค่าเริ่มต้น: "false"

โดยแฟล็กนี้จะเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่อให้ระบบไม่สร้างไฟล์ init.py ในไฟล์ที่เรียกใช้ของเป้าหมาย Python โดยอัตโนมัติอีกต่อไป กล่าวคือ เมื่อเป้าหมาย py_binary หรือ py_test มี legacy_create_init ตั้งค่าเป็น "auto" (ค่าเริ่มต้น) ระบบจะถือว่าเป็นเท็จก็ต่อเมื่อมีการตั้งค่าสถานะนี้ ดู https://github.com/bazelbuild/bazel/issues/10076

แท็ก affects_outputs, incompatible_change

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]cache_test_results [-t] default: "auto"

หากตั้งค่าเป็น "auto" Bazel จะเรียกใช้การทดสอบอีกครั้งในกรณีต่อไปนี้เท่านั้น (1) Bazel ตรวจพบการเปลี่ยนแปลงในการทดสอบหรือการขึ้นต่อกัน (2) มีการทำเครื่องหมายการทดสอบเป็นภายนอก (3) มีการขอเรียกใช้การทดสอบหลายครั้งด้วย --runs_per_test หรือ(4) การทดสอบล้มเหลวก่อนหน้านี้ หากตั้งค่าเป็น "ใช่" Bazel จะแคชผลการทดสอบทั้งหมด ยกเว้นการทดสอบที่ทำเครื่องหมายว่าเป็นการทดสอบภายนอก หากตั้งค่าเป็น "no" Bazel จะไม่แคชผลการทดสอบใดๆ

--[no]experimental_cancel_concurrent_tests ค่าเริ่มต้น: "ไม่เลย"

หากเป็น "on_failed" หรือ "on_passed" Blaze จะยกเลิกการทดสอบที่ทำงานพร้อมกันในการเรียกใช้ครั้งแรกที่มีผลลัพธ์ดังกล่าว ซึ่งจะมีประโยชน์เมื่อใช้ร่วมกับ --runs_per_test_detects_flakes เท่านั้น

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_fetch_all_coverage_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะดึงข้อมูลไดเรกทอรีข้อมูลความครอบคลุมทั้งหมดสำหรับการทดสอบแต่ละครั้งในระหว่างการเรียกใช้ความครอบคลุม

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_generate_llvm_lcov ค่าเริ่มต้น: "false"

หากเป็นจริง ความครอบคลุมสำหรับ Clang จะสร้างรายงาน LCOV

แท็ก affects_outputs, loading_and_analysis, experimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> ค่าเริ่มต้น: "bazel"

เปิดใช้ Classpath ที่ลดลงสำหรับการคอมไพล์ Java

--[no]experimental_run_android_lint_on_java_rules ค่าเริ่มต้น: "false"

ว่าจะตรวจสอบแหล่งข้อมูล java_* หรือไม่

แท็ก affects_outputs, experimental

--[no]explicit_java_test_deps ค่าเริ่มต้น: "false"

ระบุการขึ้นต่อ JUnit หรือ Hamcrest อย่างชัดเจนใน java_test แทนที่จะรับจาก deps ของ TestRunner โดยไม่ตั้งใจ ขณะนี้ใช้ได้กับ Bazel เท่านั้น

--host_java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่เครื่องมือใช้ซึ่งจะดำเนินการในระหว่างการสร้าง

--host_javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์

--host_jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์ ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--[no]incompatible_check_sharding_support ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะทำให้การทดสอบที่แยกส่วนล้มเหลวหากโปรแกรมเรียกใช้การทดสอบไม่ได้ระบุว่ารองรับการแยกส่วนโดยการแตะไฟล์ที่เส้นทางใน TEST_SHARD_STATUS_FILE หากเป็นเท็จ โปรแกรมเรียกใช้การทดสอบที่ไม่รองรับการแบ่งพาร์ติชันจะทำให้การทดสอบทั้งหมดทำงานในแต่ละพาร์ติชัน

แท็ก incompatible_change

--[no]incompatible_exclusive_test_sandboxed ค่าเริ่มต้น: "จริง"

หากเป็นจริง การทดสอบแบบเฉพาะจะทำงานร่วมกับกลยุทธ์แซนด์บ็อกซ์ เพิ่มแท็ก "local" เพื่อบังคับให้เรียกใช้การทดสอบแบบเฉพาะในเครื่อง

แท็ก incompatible_change

--[no]incompatible_strict_action_env ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะใช้สภาพแวดล้อมที่มีค่าแบบคงที่สำหรับ PATH และจะไม่รับค่า LD_LIBRARY_PATH ใช้ --action_env=ENV_VARIABLE หากต้องการรับค่าตัวแปรสภาพแวดล้อมที่เฉพาะเจาะจงจากไคลเอ็นต์ แต่โปรดทราบว่าการทำเช่นนี้อาจป้องกันการแคชข้ามผู้ใช้หากใช้แคชที่แชร์

แท็ก loading_and_analysis, incompatible_change

--j2objc_translation_flags=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังเครื่องมือ J2ObjC

--java_debug

ทำให้เครื่องเสมือน Java ของการทดสอบ Java รอการเชื่อมต่อจากโปรแกรมแก้ไขข้อบกพร่องที่สอดคล้องกับ JDWP (เช่น jdb) ก่อนเริ่มการทดสอบ Implies -test_output=streamed.

ขยายเป็น
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps ค่าเริ่มต้น: "จริง"

สร้างข้อมูลการขึ้นต่อกัน (ตอนนี้คือ classpath เวลาคอมไพล์) ต่อเป้าหมาย Java

--[no]java_header_compilation ค่าเริ่มต้น: "จริง"

คอมไพล์ ijar จากแหล่งที่มาโดยตรง

--java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java

--java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่จะใช้เมื่อสร้างไบนารี Java หากตั้งค่าแฟล็กนี้เป็นสตริงว่างเปล่า ระบบจะใช้ตัวเรียกใช้ JDK แอตทริบิวต์ "launcher" จะลบล้างแฟล็กนี้

--java_runtime_version=<a string> ค่าเริ่มต้น: "local_jdk"

เวอร์ชันรันไทม์ของ Java

--javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac

--jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--legacy_main_dex_list_generator=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้เพื่อสร้างรายการคลาสที่ต้องอยู่ใน dex หลักเมื่อคอมไพล์ multidex เดิม

--optimizing_dexer=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้ในการทำ dexing โดยไม่ต้องใช้การแยกส่วน

--plugin=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ปลั๊กอินที่จะใช้ในการสร้าง ปัจจุบันใช้ได้กับ java_plugin

--proguard_top=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ ProGuard ที่จะใช้ในการนำโค้ดออกเมื่อสร้างไบนารี Java

--proto_compiler=<a build target label> default: "@bazel_tools//tools/proto:protoc"

ป้ายกำกับของโปรโตคอมไพเลอร์

แท็ก affects_outputs, loading_and_analysis

--[no]proto_profile ค่าเริ่มต้น: "จริง"

ว่าจะส่ง profile_path ไปยังคอมไพเลอร์โปรโตหรือไม่

แท็ก affects_outputs, loading_and_analysis

--proto_profile_path=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

โปรไฟล์ที่จะส่งไปยังคอมไพเลอร์โปรโตคอลเป็น profile_path หากไม่ได้ตั้งค่า แต่ --proto_profile เป็นจริง (ค่าเริ่มต้น) ระบบจะอนุมานเส้นทางจาก --fdo_optimize

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_cc=<a build target label> default: "@bazel_tools//tools/proto:cc_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ C++

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> ค่าเริ่มต้น: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์โปรโตคอล j2objc

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_java=<a build target label> default: "@bazel_tools//tools/proto:java_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ Java

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ JavaLite

แท็ก affects_outputs, loading_and_analysis

--protocopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ Protobuf

แท็ก affects_outputs

--[no]runs_per_test_detects_flakes ค่าเริ่มต้น: "false"

หากเป็นจริง ชาร์ดใดก็ตามที่มีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ผ่านและมีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ไม่ผ่านจะได้รับสถานะไม่น่าเชื่อถือ

--shell_executable=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ไปยังไฟล์ปฏิบัติการของเชลล์เพื่อให้ Bazel ใช้ หากไม่ได้ตั้งค่านี้ แต่ตั้งค่าตัวแปรสภาพแวดล้อม BAZEL_SH ในการเรียกใช้ Bazel ครั้งแรก (ที่เริ่มต้นเซิร์ฟเวอร์ Bazel) Bazel จะใช้ตัวแปรนั้น หากไม่ได้ตั้งค่าทั้ง 2 อย่าง Bazel จะใช้เส้นทางเริ่มต้นที่ฮาร์ดโค้ดไว้โดยขึ้นอยู่กับระบบปฏิบัติการที่ทำงาน (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, อื่นๆ ทั้งหมด: /bin/bash) โปรดทราบว่าการใช้เชลล์ที่ไม่รองรับ bash อาจทำให้บิลด์ล้มเหลวหรือไบนารีที่สร้างขึ้นรันไทม์ล้มเหลว

แท็ก loading_and_analysis

--test_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวเลือกและอาร์กิวเมนต์เพิ่มเติมที่ควรส่งไปยังไฟล์ปฏิบัติการทดสอบ ใช้ได้หลายครั้งเพื่อระบุอาร์กิวเมนต์หลายรายการ หากมีการเรียกใช้การทดสอบหลายรายการ การทดสอบแต่ละรายการจะได้รับอาร์กิวเมนต์ที่เหมือนกัน ใช้โดยคำสั่ง "bazel test" เท่านั้น

--test_filter=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตัวกรองที่จะส่งต่อให้กับเฟรมเวิร์กการทดสอบ ใช้เพื่อจำกัดการทดสอบที่เรียกใช้ โปรดทราบว่าการดำเนินการนี้ไม่มีผลต่อเป้าหมายที่จะสร้าง

--test_result_expiration=<an integer> ค่าเริ่มต้น: "-1"

ตัวเลือกนี้เลิกใช้งานแล้วและไม่มีผล

--[no]test_runner_fail_fast ค่าเริ่มต้น: "false"

ส่งต่อตัวเลือก "ล้มเหลวอย่างรวดเร็ว" ไปยังโปรแกรมเรียกใช้การทดสอบ โปรแกรมเรียกใช้การทดสอบควรหยุดการดำเนินการเมื่อเกิดข้อผิดพลาดครั้งแรก

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> ค่าเริ่มต้น: "explicit"

ระบุกลยุทธ์สำหรับการแบ่งการทดสอบ: "explicit" เพื่อใช้การแบ่งก็ต่อเมื่อมีแอตทริบิวต์ BUILD "shard_count" "disabled" เพื่อไม่ให้ใช้การแบ่งพาร์ติชันการทดสอบ 'forced=k' เพื่อบังคับใช้ Shard 'k' สำหรับการทดสอบโดยไม่คำนึงถึงแอตทริบิวต์ BUILD ของ 'shard_count'

--tool_java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java ที่ใช้ในการเรียกใช้เครื่องมือที่จำเป็นในระหว่างการสร้าง

--tool_java_runtime_version=<a string> ค่าเริ่มต้น: "remotejdk_11"

เวอร์ชันรันไทม์ Java ที่ใช้ในการเรียกใช้เครื่องมือระหว่างการสร้าง

--[no]use_ijars ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ตัวเลือกนี้จะทำให้การคอมไพล์ Java ใช้ JAR ของอินเทอร์เฟซ ซึ่งจะทําให้การคอมไพล์ที่เพิ่มขึ้นเร็วขึ้น แต่ข้อความแสดงข้อผิดพลาดอาจแตกต่างกัน

ตัวเลือกความช่วยเหลือ

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--help_verbosity=<long, medium or short> ค่าเริ่มต้น: "ปานกลาง"

เลือกระดับรายละเอียดของคำสั่ง help

แท็ก terminal_output

--long [-l]

แสดงคำอธิบายแบบเต็มของแต่ละตัวเลือกแทนที่จะแสดงแค่ชื่อ

ขยายเป็น
  --help_verbosity=long

แท็ก terminal_output

--short

แสดงเฉพาะชื่อของตัวเลือก ไม่ใช่ประเภทหรือความหมาย

ขยายเป็น
  --help_verbosity=short

แท็ก terminal_output

ตัวเลือกข้อมูล

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้น ไม่ใช่การมีอยู่ของเอาต์พุต
--info_output_type=<stdout or response_proto> ค่าเริ่มต้น: "stdout"

หากเป็น stdout ระบบจะพิมพ์ผลลัพธ์ลงในคอนโซลโดยตรง หากเป็น response_proto ระบบจะแพ็กผลลัพธ์ของคำสั่ง info ไว้ในส่วนขยายการตอบกลับ

แท็ก affects_outputs, terminal_output

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--[no]show_make_env ค่าเริ่มต้น: "false"

รวมสภาพแวดล้อม "Make" ไว้ในเอาต์พุต

แท็ก affects_outputs, terminal_output

ตัวเลือกใบอนุญาต

ตัวเลือกการติดตั้งบนอุปกรณ์เคลื่อนที่

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--mode=<classic, classic_internal_test_do_not_use or skylark> ค่าเริ่มต้น: "skylark"

แฟล็กที่เลิกใช้งานแล้วซึ่งไม่มีผล ระบบยังคงรองรับเฉพาะโหมด Skylark

แท็ก loading_and_analysis, execution, incompatible_change

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--adb=<a string> ค่าเริ่มต้น: ""

ไบนารี adb ที่จะใช้สำหรับคำสั่ง "mobile-install" หากไม่ได้ระบุ ระบบจะใช้ SDK ใน Android ที่ระบุโดยตัวเลือกบรรทัดคำสั่ง --android_sdk_channel (หรือ SDK เริ่มต้นหากไม่ได้ระบุ --android_sdk_channel)

แท็ก changes_inputs

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]incremental ค่าเริ่มต้น: "false"

จะทำการติดตั้งแบบเพิ่มทีละรายการหรือไม่ หากเป็นจริง ให้พยายามหลีกเลี่ยงการทำงานเพิ่มเติมที่ไม่จำเป็นโดยอ่านสถานะของอุปกรณ์ที่จะติดตั้งโค้ด และใช้ข้อมูลดังกล่าวเพื่อหลีกเลี่ยงการทำงานที่ไม่จำเป็น หากเป็นเท็จ (ค่าเริ่มต้น) ให้ติดตั้งแบบเต็มเสมอ

แท็ก loading_and_analysis

--[no]split_apks ค่าเริ่มต้น: "false"

จะใช้ Split APK เพื่อติดตั้งและอัปเดตแอปพลิเคชันในอุปกรณ์หรือไม่ ใช้งานได้กับอุปกรณ์ที่มี Marshmallow ขึ้นไปเท่านั้น

แท็ก loading_and_analysis, affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--adb_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

อาร์กิวเมนต์เพิ่มเติมที่จะส่งไปยัง adb โดยปกติจะใช้เพื่อกำหนดอุปกรณ์ที่จะติดตั้ง

แท็ก action_command_lines

--debug_app

ว่าจะรอโปรแกรมแก้ไขข้อบกพร่องก่อนเริ่มแอปหรือไม่

ขยายเป็น
  --start=DEBUG

แท็ก execution

--device=<a string> ค่าเริ่มต้น: ""

หมายเลขซีเรียลของอุปกรณ์ adb หากไม่ได้ระบุ ระบบจะใช้อุปกรณ์เครื่องแรก

แท็ก action_command_lines

--start=<no, cold, warm or debug> ค่าเริ่มต้น: "NO"

วิธีเริ่มต้นแอปหลังจากติดตั้ง ตั้งค่าเป็น WARM เพื่อรักษาสถานะของแอปพลิเคชันและคืนค่าเมื่อติดตั้งแบบเพิ่ม

แท็ก execution

--start_app

ว่าจะเริ่มแอปหลังจากติดตั้งหรือไม่

ขยายเป็น
  --start=COLD

แท็ก execution

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--incremental_install_verbosity=<a string> ค่าเริ่มต้น: ""

ระดับการแสดงรายละเอียดสำหรับการติดตั้งทีละรายการ ตั้งค่าเป็น 1 เพื่อบันทึกการแก้ไขข้อบกพร่อง

แท็ก bazel_monitoring

ตัวเลือกม็อด

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> ค่าเริ่มต้น: "auto"

จำนวนเธรดแบบขนานที่จะใช้ในระยะการโหลด/การวิเคราะห์ รับค่าจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะตั้งค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์ ต้องไม่ต่ำกว่า 1

แท็ก bazel_internal_configuration

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและความหมายของคำสั่งย่อย `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> ค่าเริ่มต้น: "<root>"

ระบุโมดูลที่ใช้ตีความที่เก็บเป้าหมายที่ระบุ

แท็ก terminal_output

--charset=<utf8 or ascii> ค่าเริ่มต้น: "utf8"

เลือกชุดอักขระที่จะใช้สำหรับโครงสร้าง มีผลกับเอาต์พุตข้อความเท่านั้น ค่าที่ใช้ได้คือ "utf8" หรือ "ascii" ค่าเริ่มต้นคือ "utf8"

แท็ก terminal_output

--[no]cycles ค่าเริ่มต้น: "จริง"

ระบุวงจรการขึ้นต่อกันภายในแผนผังที่แสดง

แท็ก terminal_output

--depth=<an integer> ค่าเริ่มต้น: "-1"

ความลึกในการแสดงสูงสุดของแผนผังการอ้างอิง ความลึก 1 จะแสดงการอ้างอิงโดยตรง เช่น สำหรับ tree, path และ all_paths ค่าเริ่มต้นจะเป็น Integer.MAX_VALUE ส่วนสำหรับ deps และ explain ค่าเริ่มต้นจะเป็น 1 (แสดงเฉพาะ deps โดยตรงของรูทนอกเหนือจากใบไม้เป้าหมายและระดับบนสุด)

แท็ก terminal_output

--extension_filter=<a comma-separated list of <extension>s> ค่าเริ่มต้น: ดูคำอธิบาย

แสดงเฉพาะการใช้งานส่วนขยายโมดูลเหล่านี้และที่เก็บที่สร้างขึ้นโดยส่วนขยายดังกล่าวก็ต่อเมื่อมีการตั้งค่าสถานะที่เกี่ยวข้อง หากตั้งค่าไว้ กราฟผลลัพธ์จะรวมเฉพาะเส้นทางที่มีโมดูลที่ใช้ส่วนขยายที่ระบุ รายการที่ว่างเปล่าจะปิดใช้ตัวกรอง ซึ่งเป็นการระบุส่วนขยายที่เป็นไปได้ทั้งหมด

แท็ก terminal_output

--extension_info=<hidden, usages, repos or all> ค่าเริ่มต้น: "ซ่อน"

ระบุรายละเอียดเกี่ยวกับการใช้งานส่วนขยายที่จะรวมไว้ในผลการค้นหา "การใช้งาน" จะแสดงเฉพาะชื่อส่วนขยาย "ที่เก็บ" จะรวมที่เก็บที่นำเข้าด้วย use_repo และ "ทั้งหมด" จะแสดงที่เก็บอื่นๆ ที่สร้างโดยส่วนขยายด้วย

แท็ก terminal_output

--extension_usages=<a comma-separated list of <module>s> ค่าเริ่มต้น: ""

ระบุโมดูลที่จะแสดงการใช้งานส่วนขยายในคำค้นหา show_extension

แท็ก terminal_output

--from=<a comma-separated list of <module>s> ค่าเริ่มต้น: "<root>"

โมดูลที่เริ่มต้นซึ่งจะแสดงการค้นหากราฟการอ้างอิง โปรดตรวจสอบความหมายที่แน่นอนในคำอธิบายของแต่ละคําค้นหา ค่าเริ่มต้นคือ <root>

แท็ก terminal_output

--[no]include_builtin ค่าเริ่มต้น: "false"

รวมโมดูลในตัวไว้ในกราฟการอ้างอิง ปิดใช้โดยค่าเริ่มต้นเนื่องจากมีเสียงดัง

แท็ก terminal_output

--[no]include_unused ค่าเริ่มต้น: "false"

นอกจากนี้ คำค้นหายังจะพิจารณาและแสดงโมดูลที่ไม่ได้ใช้ ซึ่งไม่ได้อยู่ในกราฟการแก้ปัญหาโมดูลหลังจากการเลือก (เนื่องจากกฎการเลือกเวอร์ชันขั้นต่ำหรือกฎการลบล้าง) ซึ่งอาจส่งผลแตกต่างกันสำหรับคำค้นหาแต่ละประเภท เช่น การรวมเส้นทางใหม่ในคำสั่ง all_paths หรือการเพิ่มการอ้างอิงในคำสั่ง explain

แท็ก terminal_output

--output=<text, json or graph> ค่าเริ่มต้น: "ข้อความ"

รูปแบบที่ควรพิมพ์ผลการค้นหา ค่าที่ใช้ได้สำหรับการค้นหาคือ text, json, graph

แท็ก terminal_output

--[no]verbose ค่าเริ่มต้น: "false"

นอกจากนี้ คำค้นหายังจะแสดงเหตุผลที่โมดูลได้รับการแก้ไขเป็นเวอร์ชันปัจจุบัน (หากมีการเปลี่ยนแปลง) ค่าเริ่มต้นเป็นจริงเฉพาะสำหรับคำค้นหา Explain

แท็ก terminal_output

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกเบ็ดเตล็ดที่ไม่ได้จัดหมวดหมู่ไว้:

แสดงรายการคำช่วยจำที่จะใช้กรองข้อมูล print_action โดยจะไม่มีการกรองหากปล่อยให้ว่างไว้

ตัวเลือกการค้นหา

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--[no]keep_going [-k] ค่าเริ่มต้น: "false"

ดำเนินการต่อให้ได้มากที่สุดหลังจากเกิดข้อผิดพลาด แม้ว่าจะวิเคราะห์เป้าหมายที่ล้มเหลวและเป้าหมายที่ขึ้นอยู่กับเป้าหมายดังกล่าวไม่ได้ แต่ก็วิเคราะห์ข้อกำหนดเบื้องต้นอื่นๆ ของเป้าหมายเหล่านี้ได้

แท็ก 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"> ค่าเริ่มต้น: "auto"

จำนวนเธรดแบบขนานที่จะใช้ในระยะการโหลด/การวิเคราะห์ รับค่าจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะตั้งค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์ ต้องไม่ต่ำกว่า 1

แท็ก bazel_internal_configuration

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและการตีความหมายของคำค้นหา
--aspect_deps=<off, conservative or precise> ค่าเริ่มต้น: "ระมัดระวัง"

วิธีแก้ไขการขึ้นต่อกันของแง่มุมเมื่อรูปแบบเอาต์พุตเป็นหนึ่งใน {xml,proto,record} "off" หมายความว่าจะไม่มีการแก้ไขการขึ้นต่อกันของแง่มุม "conservative" (ค่าเริ่มต้น) หมายความว่าจะมีการเพิ่มการขึ้นต่อกันของแง่มุมที่ประกาศทั้งหมดไม่ว่าแง่มุมเหล่านั้นจะได้รับคลาสกฎของการขึ้นต่อกันโดยตรงหรือไม่ก็ตาม "precise" หมายความว่าจะมีการเพิ่มเฉพาะแง่มุมที่อาจใช้งานได้เมื่อพิจารณาจากคลาสกฎของการขึ้นต่อกันโดยตรง โปรดทราบว่าโหมดที่แม่นยำต้องโหลดแพ็กเกจอื่นๆ เพื่อประเมินเป้าหมายเดียว จึงทำให้ช้ากว่าโหมดอื่นๆ โปรดทราบว่าแม้ในโหมดที่แม่นยำก็ยังไม่แม่นยำโดยสมบูรณ์ เนื่องจากระบบจะตัดสินใจว่าจะคำนวณแง่มุมใดในระยะการวิเคราะห์ ซึ่งไม่ได้ทำงานระหว่าง "bazel query"

แท็ก build_file_semantics

--[no]consistent_labels ค่าเริ่มต้น: "false"

หากเปิดใช้ คำสั่งค้นหาทุกคำสั่งจะปล่อยป้ายกำกับออกมาเสมือนว่าใช้ฟังก์ชัน <code>str</code> ของ Starlark กับอินสแตนซ์ <code>Label</code> ซึ่งจะเป็นประโยชน์สำหรับเครื่องมือที่ต้องจับคู่เอาต์พุตของคำสั่งการค้นหาและ/หรือป้ายกำกับต่างๆ ที่กฎปล่อยออกมา หากไม่ได้เปิดใช้ ตัวจัดรูปแบบเอาต์พุตจะสามารถปล่อยชื่อที่เก็บที่ชัดเจน (เทียบกับที่เก็บหลัก) แทนเพื่อให้เอาต์พุตอ่านง่ายขึ้น

แท็ก terminal_output

--[no]experimental_explicit_aspects ค่าเริ่มต้น: "false"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]experimental_graphless_query ค่าเริ่มต้น: "auto"

หากเป็นจริง จะใช้การติดตั้งใช้งานการค้นหาที่ไม่ทำสำเนากราฟ การติดตั้งใช้งานใหม่รองรับเฉพาะ --order_output=no รวมถึงรองรับเฉพาะชุดย่อยของตัวจัดรูปแบบเอาต์พุต

แท็ก build_file_semantics, eagerness_to_exit

--graph:conditional_edges_limit=<an integer> ค่าเริ่มต้น: "4"

จำนวนสูงสุดของป้ายกำกับเงื่อนไขที่จะแสดง -1 หมายถึงไม่มีการตัดทอน และ 0 หมายถึงไม่มีคำอธิบายประกอบ ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--[no]graph:factored ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะส่งกราฟที่ "แยกตัวประกอบ" กล่าวคือ ระบบจะผสานโหนดที่เทียบเท่ากันในเชิงโทโพโลยีเข้าด้วยกันและต่อป้ายกำกับของโหนดเหล่านั้น ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--graph:node_limit=<an integer> ค่าเริ่มต้น: "512"

ความยาวสูงสุดของสตริงป้ายกำกับสำหรับโหนดกราฟในเอาต์พุต ระบบจะตัดป้ายกำกับที่ยาวเกินไป โดย -1 หมายถึงไม่มีการตัด ตัวเลือกนี้ใช้ได้กับ --output=graph เท่านั้น

แท็ก terminal_output

--[no]implicit_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมทรัพยากร Dependency โดยนัยไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน การขึ้นต่อกันโดยนัยคือการขึ้นต่อกันที่ไม่ได้ระบุอย่างชัดเจนในไฟล์ BUILD แต่ Bazel เพิ่มให้ สำหรับ cquery ตัวเลือกนี้จะควบคุมการกรอง Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--[no]include_aspects ค่าเริ่มต้น: "จริง"

aquery, cquery: whether to include aspect-generated actions in the output. query: no-op (aspects are always followed).

แท็ก terminal_output

--[no]incompatible_lexicographical_output ค่าเริ่มต้น: "จริง"

หากตั้งค่าตัวเลือกนี้ sort จะแสดงผล --order_output=auto ตามลำดับพจนานุกรม

แท็ก terminal_output, incompatible_change

--[no]incompatible_package_group_includes_double_slash ค่าเริ่มต้น: "จริง"

หากเปิดใช้ เมื่อส่งออกแอตทริบิวต์ packages ของ package_group ระบบจะไม่ละเว้น // ที่นำหน้า

แท็ก terminal_output, incompatible_change

--[no]infer_universe_scope ค่าเริ่มต้น: "false"

หากตั้งค่าและไม่ได้ตั้งค่า --universe_scope ระบบจะอนุมานค่าของ --universe_scope เป็นรายการรูปแบบเป้าหมายที่ไม่ซ้ำกันในนิพจน์การค้นหา โปรดทราบว่าค่า --universe_scope ที่อนุมานสำหรับนิพจน์การค้นหาที่ใช้ฟังก์ชันระดับจักรวาล (เช่น allrdeps) อาจไม่ใช่สิ่งที่คุณต้องการ ดังนั้นคุณควรใช้ตัวเลือกนี้เฉพาะในกรณีที่คุณทราบว่ากำลังทำอะไรอยู่ ดูรายละเอียดและตัวอย่างได้ที่ https://bazel.build/reference/query#sky-query หากตั้งค่า --universe_scope ระบบจะไม่สนใจค่าของตัวเลือกนี้ หมายเหตุ: ตัวเลือกนี้ใช้กับ query เท่านั้น (ไม่ใช่ cquery)

แท็ก loading_and_analysis

--[no]line_terminator_null ค่าเริ่มต้น: "false"

ไม่ว่าจะสิ้นสุดแต่ละรูปแบบด้วย \0 แทนการขึ้นบรรทัดใหม่หรือไม่

แท็ก terminal_output

--[no]nodep_deps ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะรวมการขึ้นต่อกันจากแอตทริบิวต์ "nodep" ไว้ในกราฟการขึ้นต่อกันที่การค้นหาทำงาน ตัวอย่างทั่วไปของแอตทริบิวต์ "nodep" คือ "visibility" เรียกใช้และแยกวิเคราะห์เอาต์พุตของ info build-language เพื่อดูแอตทริบิวต์ "nodep" ทั้งหมดในภาษาบิลด์

แท็ก build_file_semantics

--noorder_results

แสดงผลลัพธ์ตามลำดับการขึ้นต่อกัน (ค่าเริ่มต้น) หรือแบบไม่เรียงลำดับ เอาต์พุตที่ไม่มีการจัดเรียงจะเร็วกว่า แต่จะรองรับเฉพาะเมื่อ --output ไม่ใช่ minrank, maxrank หรือ graph

ขยายเป็น
  --order_output=no

แท็ก terminal_output

--null

ไม่ว่าจะสิ้นสุดแต่ละรูปแบบด้วย \0 แทนการขึ้นบรรทัดใหม่หรือไม่

ขยายเป็น
  --line_terminator_null=true

แท็ก terminal_output

--order_output=<no, deps, auto or full> ค่าเริ่มต้น: "auto"

แสดงผลลัพธ์แบบไม่เรียง (no) เรียงตามการขึ้นต่อกัน (deps) หรือเรียงอย่างสมบูรณ์ (full) ค่าเริ่มต้นคือ "auto" ซึ่งหมายความว่าผลลัพธ์จะแสดงตามลำดับการอ้างอิงหรือตามลำดับทั้งหมด ขึ้นอยู่กับตัวจัดรูปแบบเอาต์พุต (ตามลำดับการอ้างอิงสำหรับ proto, minrank, maxrank และ graph ส่วนตามลำดับทั้งหมดสำหรับตัวจัดรูปแบบอื่นๆ) เมื่อเอาต์พุตได้รับการจัดเรียงอย่างสมบูรณ์ ระบบจะพิมพ์โหนดตามลำดับที่กำหนดได้อย่างสมบูรณ์ (ทั้งหมด) ก่อนอื่น ระบบจะจัดเรียงโหนดทั้งหมดตามลำดับตัวอักษร จากนั้นจะใช้แต่ละโหนดในรายการเป็นจุดเริ่มต้นของการค้นหาแบบเจาะลึกหลังการเรียงลำดับ ซึ่งจะมีการข้ามขอบขาออกไปยังโหนดที่ยังไม่ได้เข้าชมตามลำดับตัวอักษรของโหนดสืบทอด สุดท้าย ระบบจะพิมพ์โหนดในลำดับย้อนกลับของลำดับที่เข้าชม

แท็ก terminal_output

--order_results

แสดงผลลัพธ์ตามลำดับการขึ้นต่อกัน (ค่าเริ่มต้น) หรือแบบไม่เรียงลำดับ เอาต์พุตที่ไม่มีการจัดเรียงจะเร็วกว่า แต่จะรองรับเฉพาะเมื่อ --output ไม่ใช่ minrank, maxrank หรือ graph

ขยายเป็น
  --order_output=auto

แท็ก terminal_output

--output=<a string> ค่าเริ่มต้น: "label"

รูปแบบที่ควรพิมพ์ผลการค้นหา ค่าที่อนุญาตสำหรับคำค้นหา ได้แก่ build, graph, streamed_jsonproto, label, label_kind, location, maxrank, minrank, package, proto, streamed_proto, xml

แท็ก terminal_output

--output_file=<a string> ค่าเริ่มต้น: ""

เมื่อระบุ ผลลัพธ์การค้นหาจะเขียนลงในไฟล์นี้โดยตรง และจะไม่มีการพิมพ์อะไรลงในสตรีมเอาต์พุตมาตรฐาน (stdout) ของ Bazel ในการทดสอบเปรียบเทียบ โดยทั่วไปแล้ววิธีนี้จะเร็วกว่า <code>bazel query &gt; file</code>

แท็ก terminal_output

--[no]proto:default_values ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมแอตทริบิวต์ที่ไม่ได้ระบุค่าอย่างชัดเจนในไฟล์ BUILD มิฉะนั้นจะละเว้น ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:definition_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง proto definition_stack ซึ่งจะบันทึกสแต็กการเรียก Starlark สำหรับอินสแตนซ์ของกฎแต่ละรายการ ณ เวลาที่กำหนดคลาสของกฎ

แท็ก terminal_output

--[no]proto:flatten_selects ค่าเริ่มต้น: "จริง"

หากเปิดใช้ แอตทริบิวต์ที่กำหนดค่าได้ซึ่งสร้างโดย select() จะได้รับการปรับให้แบน สำหรับประเภทรายการ การแสดงแบบ Flatten คือรายการที่มีค่าแต่ละค่าของแผนที่ที่เลือกเพียงครั้งเดียว ระบบจะทำให้ประเภทสเกลาร์แบนเป็นค่าว่าง

แท็ก build_file_semantics

--[no]proto:include_attribute_source_aspects ค่าเริ่มต้น: "false"

ป้อนข้อมูลลงในช่องโปรโต source_aspect_name ของแอตทริบิวต์แต่ละรายการด้วยแง่มุมของแหล่งที่มาที่แอตทริบิวต์มาจาก (สตริงว่างหากไม่ได้มาจากแง่มุมของแหล่งที่มา)

แท็ก terminal_output

--[no]proto:include_starlark_rule_env ค่าเริ่มต้น: "จริง"

ใช้สภาพแวดล้อม Starlark ในค่าของแอตทริบิวต์ $internal_attr_hash ที่สร้างขึ้น ซึ่งจะช่วยให้มั่นใจได้ว่าคำจำกัดความของกฎ Starlark (และการนำเข้าแบบทรานซิทีฟ) เป็นส่วนหนึ่งของตัวระบุนี้

แท็ก terminal_output

--[no]proto:include_synthetic_attribute_hash ค่าเริ่มต้น: "false"

เลือกว่าจะคำนวณและป้อนแอตทริบิวต์ $internal_attr_hash หรือไม่

แท็ก terminal_output

--[no]proto:instantiation_stack ค่าเริ่มต้น: "false"

ป้อนข้อมูลในสแต็กการเรียกอินสแตนซ์ของแต่ละกฎ โปรดทราบว่าต้องมีสแต็ก

แท็ก terminal_output

--[no]proto:locations ค่าเริ่มต้น: "จริง"

เลือกว่าจะแสดงข้อมูลตำแหน่งในเอาต์พุต Proto หรือไม่

แท็ก terminal_output

--proto:output_rule_attrs=<comma-separated list of options> ค่าเริ่มต้น: "all"

รายการแอตทริบิวต์ที่คั่นด้วยจุลภาคที่จะรวมไว้ในเอาต์พุต ค่าเริ่มต้นคือแอตทริบิวต์ทั้งหมด ตั้งค่าเป็นสตริงว่างเปล่าเพื่อไม่ให้แสดงแอตทริบิวต์ใดๆ ตัวเลือกนี้ใช้ได้กับ --output=proto

แท็ก terminal_output

--[no]proto:rule_classes ค่าเริ่มต้น: "false"

ป้อนข้อมูลในช่อง rule_class_key ของแต่ละกฎ และสำหรับกฎแรกที่มี rule_class_key ที่ระบุ ให้ป้อนข้อมูลในช่อง rule_class_info proto ด้วย ฟิลด์ rule_class_key จะระบุคลาสกฎที่ไม่ซ้ำกัน และฟิลด์ rule_class_info คือคำจำกัดความ API ของคลาสกฎในรูปแบบ Stardoc

แท็ก terminal_output

--[no]proto:rule_inputs_and_outputs ค่าเริ่มต้น: "จริง"

จะป้อนข้อมูลในช่อง rule_input และ rule_output หรือไม่

แท็ก terminal_output

--query_file=<a string> ค่าเริ่มต้น: ""

หากตั้งค่าไว้ การค้นหาจะอ่านการค้นหาจากไฟล์ที่ตั้งชื่อไว้ที่นี่ แทนที่จะอ่านจากบรรทัดคำสั่ง การระบุไฟล์ที่นี่รวมถึงการค้นหาในบรรทัดคำสั่งถือเป็นข้อผิดพลาด

แท็ก changes_inputs

--[no]relative_locations ค่าเริ่มต้น: "false"

หากเป็นจริง ตำแหน่งของไฟล์ BUILD ในเอาต์พุต XML และ Proto จะเป็นแบบสัมพัทธ์ โดยค่าเริ่มต้น เอาต์พุตตำแหน่งจะเป็นเส้นทางที่สมบูรณ์และจะไม่สอดคล้องกันในเครื่องต่างๆ คุณสามารถตั้งค่าตัวเลือกนี้เป็น "จริง" เพื่อให้ได้ผลลัพธ์ที่สอดคล้องกันในเครื่องต่างๆ

แท็ก terminal_output

--[no]strict_test_suite ค่าเริ่มต้น: "false"

หากเป็นจริง นิพจน์ tests() จะแสดงข้อผิดพลาดหากพบ test_suite ที่มีเป้าหมายที่ไม่ใช่การทดสอบ

แท็ก build_file_semantics, eagerness_to_exit

--[no]tool_deps ค่าเริ่มต้น: "จริง"

การค้นหา: หากปิดใช้ ระบบจะไม่รวมทรัพยากร Dependency ใน "การกำหนดค่า exec" ไว้ในกราฟทรัพยากร Dependency ที่การค้นหาทำงาน ขอบการขึ้นต่อกันของ "การกำหนดค่า exec" เช่น ขอบจากกฎ "proto_library" ไปยังคอมไพเลอร์โปรโตคอล มักจะชี้ไปยังเครื่องมือที่เรียกใช้ในระหว่างการบิลด์แทนที่จะเป็นส่วนหนึ่งของโปรแกรม "เป้าหมาย" เดียวกัน Cquery: หากปิดใช้ จะกรองเป้าหมายที่กำหนดค่าทั้งหมดซึ่งข้ามการเปลี่ยนการดำเนินการจากเป้าหมายระดับบนสุดที่ค้นพบเป้าหมายที่กำหนดค่านี้ ซึ่งหมายความว่าหากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่าเป้าหมาย ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่าซึ่งอยู่ในกำหนดค่าเป้าหมายด้วย หากเป้าหมายระดับบนสุดอยู่ในการกำหนดค่า exec ระบบจะแสดงเฉพาะเป้าหมายที่กำหนดค่า exec ตัวเลือกนี้จะไม่ยกเว้น Toolchain ที่แก้ไขแล้ว

แท็ก build_file_semantics

--universe_scope=<comma-separated list of options> ค่าเริ่มต้น: ""

ชุดรูปแบบเป้าหมายที่คั่นด้วยคอมมา (การบวกและการลบ) ระบบอาจเรียกใช้การค้นหาในจักรวาลที่กำหนดโดยการปิดทรานซิทีฟของเป้าหมายที่ระบุ ตัวเลือกนี้ใช้สำหรับคำสั่งการค้นหาและ cquery สำหรับ cquery อินพุตของตัวเลือกนี้คือเป้าหมายที่สร้างคำตอบทั้งหมดขึ้นมา ดังนั้นตัวเลือกนี้อาจส่งผลต่อการกำหนดค่าและการเปลี่ยนผ่าน หากไม่ได้ระบุตัวเลือกนี้ ระบบจะถือว่าเป้าหมายระดับบนสุดคือเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหา หมายเหตุ: สำหรับ cquery การไม่ระบุตัวเลือกนี้อาจทำให้บิลด์หยุดทำงานหากเป้าหมายที่แยกวิเคราะห์จากนิพจน์การค้นหาไม่สามารถสร้างได้ด้วยตัวเลือกที่ระดับบนสุด

แท็ก loading_and_analysis

--[no]xml:default_values ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะพิมพ์แอตทริบิวต์ของกฎที่ไม่ได้ระบุค่าอย่างชัดเจนในไฟล์ BUILD มิฉะนั้นจะละเว้น

แท็ก terminal_output

--[no]xml:line_numbers ค่าเริ่มต้น: "จริง"

หากเป็นจริง เอาต์พุต XML จะมีหมายเลขบรรทัด การปิดใช้ตัวเลือกนี้อาจช่วยให้อ่าน Diff ได้ง่ายขึ้น ตัวเลือกนี้ใช้ได้กับ --output=xml เท่านั้น

แท็ก terminal_output

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

ตัวเลือกการเรียกใช้

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่ปรากฏก่อนคำสั่งและไคลเอ็นต์แยกวิเคราะห์
--[no]portable_paths ค่าเริ่มต้น: "false"

หากเป็นจริง จะรวมเส้นทางที่จะแทนที่ใน ExecRequest เพื่อให้เส้นทางผลลัพธ์สามารถพกพาได้

แท็ก affects_outputs

--[no]run ค่าเริ่มต้น: "จริง"

หากเป็นเท็จ ให้ข้ามการเรียกใช้บรรทัดคำสั่งที่สร้างขึ้นสำหรับเป้าหมายที่สร้าง โปรดทราบว่าระบบจะละเว้นแฟล็กนี้สำหรับการสร้าง --script_path ทั้งหมด

แท็ก affects_outputs

--run_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับเป้าหมายที่จะเรียกใช้ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ โดยคู่ <code>name=value</code> ซึ่งตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือโดย <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม โปรดทราบว่าโดยทั่วไปแล้วเป้าหมายที่ดำเนินการจะเห็นสภาพแวดล้อมทั้งหมดของโฮสต์ ยกเว้นตัวแปรที่ไม่ได้ตั้งค่าอย่างชัดแจ้ง

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--script_path=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

หากตั้งค่าไว้ ให้เขียนสคริปต์เชลล์ไปยังไฟล์ที่ระบุซึ่งเรียกใช้เป้าหมาย หากตั้งค่าตัวเลือกนี้ ระบบจะไม่เรียกใช้เป้าหมายจาก Bazel ใช้ "bazel run --script_path=foo //foo && ./foo" เพื่อเรียกใช้เป้าหมาย "//foo" ซึ่งแตกต่างจาก "bazel run //foo" ตรงที่ระบบจะปลดล็อก Bazel และเชื่อมต่อไฟล์ที่เรียกใช้งานได้กับ stdin ของเทอร์มินัล

แท็ก affects_outputs, execution

ตัวเลือกการปิดเครื่อง

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่ง
--iff_heap_size_greater_than=<an integer> ค่าเริ่มต้น: "0"

หากไม่ใช่ 0 การปิดระบบจะปิดเซิร์ฟเวอร์ก็ต่อเมื่อหน่วยความจำทั้งหมด (เป็น MB) ที่ JVM ใช้เกินค่านี้

แท็ก loses_incremental_state, eagerness_to_exit

ตัวเลือกการทดสอบ

รับค่าตัวเลือกทั้งหมดจาก build

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--[no]print_relative_test_log_paths ค่าเริ่มต้น: "false"

หากเป็นจริง เมื่อพิมพ์เส้นทางไปยังบันทึกการทดสอบ ให้ใช้เส้นทางแบบสัมพัทธ์ที่ใช้ประโยชน์จากลิงก์สัญลักษณ์ที่สะดวกของ "testlogs" หมายเหตุ - การเรียกใช้ "build"/"test"/etc ในภายหลังด้วยการกำหนดค่าที่แตกต่างกันอาจทำให้เป้าหมายของลิงก์สัญลักษณ์นี้เปลี่ยนแปลงไป ทำให้เส้นทางที่พิมพ์ก่อนหน้านี้ใช้ไม่ได้อีกต่อไป

แท็ก affects_outputs

--[no]test_verbose_timeout_warnings ค่าเริ่มต้น: "false"

หากเป็นจริง ให้พิมพ์คำเตือนเพิ่มเติมเมื่อเวลาดำเนินการทดสอบจริงไม่ตรงกับระยะหมดเวลาที่กำหนดโดยการทดสอบ (ไม่ว่าจะโดยนัยหรือโดยชัดแจ้ง)

แท็ก affects_outputs

--[no]verbose_test_summary ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้พิมพ์ข้อมูลเพิ่มเติม (เวลา จำนวนการเรียกใช้ที่ไม่สำเร็จ ฯลฯ) ในสรุปการทดสอบ

แท็ก affects_outputs

ตัวเลือกผู้ให้บริการ

รับค่าตัวเลือกทั้งหมดจาก test

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์
--[no]keep_going [-k] ค่าเริ่มต้น: "false"

ดำเนินการต่อให้ได้มากที่สุดหลังจากเกิดข้อผิดพลาด แม้ว่าจะวิเคราะห์เป้าหมายที่ล้มเหลวและเป้าหมายที่ขึ้นอยู่กับเป้าหมายดังกล่าวไม่ได้ แต่ก็วิเคราะห์ข้อกำหนดเบื้องต้นอื่นๆ ของเป้าหมายเหล่านี้ได้

แท็ก 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"> ค่าเริ่มต้น: "auto"

จำนวนเธรดแบบขนานที่จะใช้ในระยะการโหลด/การวิเคราะห์ รับค่าจำนวนเต็มหรือคีย์เวิร์ด ("auto", "HOST_CPUS", "HOST_RAM") ตามด้วยการดำเนินการ ([-|]<float>) เช่น "auto", "HOST_CPUS.5" "auto" จะตั้งค่าเริ่มต้นที่เหมาะสมตามทรัพยากรของโฮสต์ ต้องไม่ต่ำกว่า 1

แท็ก bazel_internal_configuration

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_config_setting_private_default_visibility ค่าเริ่มต้น: "false"

หาก incompatible_enforce_config_setting_visibility=false จะไม่มีการดำเนินการใดๆ หรือหากแฟล็กนี้เป็นเท็จ config_setting ใดๆ ที่ไม่มีแอตทริบิวต์การมองเห็นที่ชัดเจนจะเป็น //visibility:public หากตั้งค่าสถานะนี้เป็น "จริง" config_setting จะใช้ตรรกะการมองเห็นเดียวกันกับกฎอื่นๆ ทั้งหมด ดู https://github.com/bazelbuild/bazel/issues/12933

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enforce_config_setting_visibility ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้บังคับใช้การจำกัดระดับการแชร์ config_setting หากเป็นเท็จ ทุกการตั้งค่า config จะมองเห็นได้สำหรับทุกเป้าหมาย ดู https://github.com/bazelbuild/bazel/issues/12932

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่เกี่ยวข้องกับเอาต์พุตและความหมายของ Bzlmod:
--repo=<a string> มีการสะสมการใช้งานหลายครั้ง

เฉพาะผู้ให้บริการที่ระบุที่เก็บ ซึ่งอาจเป็น @apparent_repo_name หรือ @@canonical_repo_name ตัวเลือกนี้ตั้งค่าได้หลายครั้ง

แท็ก changes_inputs

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--deleted_packages=<comma-separated list of package names> มีการสะสมการใช้งานหลายครั้ง

รายการชื่อแพ็กเกจที่คั่นด้วยคอมมาซึ่งระบบบิลด์จะถือว่าไม่มีอยู่ แม้ว่าจะมองเห็นได้ที่ใดที่หนึ่งในเส้นทางแพ็กเกจก็ตาม ใช้ตัวเลือกนี้เมื่อลบแพ็กเกจย่อย "x/y" ของแพ็กเกจ "x" ที่มีอยู่ เช่น หลังจากลบ x/y/BUILD ในไคลเอ็นต์แล้ว ระบบบิลด์อาจแจ้งข้อผิดพลาดหากพบป้ายกำกับ "//x:y/z" หากรายการ package_path อื่นยังคงระบุป้ายกำกับนั้น การระบุ --deleted_packages x/y จะช่วยหลีกเลี่ยงปัญหานี้ได้

--[no]fetch ค่าเริ่มต้น: "จริง"

อนุญาตให้คำสั่งดึงข้อมูลการอ้างอิงภายนอก หากตั้งค่าเป็น false คำสั่งจะใช้เวอร์ชันที่แคชไว้ของทรัพยากร Dependency และหากไม่มี คำสั่งจะทำงานไม่สำเร็จ

--package_path=<colon-separated list of options> ค่าเริ่มต้น: "%workspace%"

รายการที่คั่นด้วยโคลอนของตำแหน่งที่จะค้นหาแพ็กเกจ องค์ประกอบที่ขึ้นต้นด้วย "%workspace%" จะสัมพันธ์กับเวิร์กสเปซที่ครอบคลุม หากละไว้หรือเว้นว่างไว้ ค่าเริ่มต้นจะเป็นเอาต์พุตของ "bazel info default-package-path"

--[no]show_loading_progress ค่าเริ่มต้น: "จริง"

หากเปิดใช้ จะทำให้ Bazel พิมพ์ข้อความ "กำลังโหลดแพ็กเกจ"

ตัวเลือกที่ควบคุมการเรียกใช้บิลด์:
--[no]experimental_persistent_aar_extractor ค่าเริ่มต้น: "false"

เปิดใช้เครื่องมือแยก AAR แบบถาวรโดยใช้ Worker

แท็ก execution, experimental

--[no]experimental_remotable_source_manifests ค่าเริ่มต้น: "false"

เลือกว่าจะทำให้การดำเนินการในไฟล์ Manifest ของแหล่งที่มาสามารถดำเนินการจากระยะไกลได้หรือไม่

แท็ก loading_and_analysis, execution, experimental

--[no]experimental_split_coverage_postprocessing ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะเรียกใช้การประมวลผลภายหลังของ Coverage สำหรับการทดสอบในกระบวนการใหม่

แท็ก execution, experimental

--[no]experimental_strict_fileset_output ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ชุดไฟล์จะถือว่าอาร์ติแฟกต์เอาต์พุตทั้งหมดเป็นไฟล์ปกติ โดยจะไม่ข้ามไดเรกทอรีหรือคำนึงถึงลิงก์สัญลักษณ์

แท็ก execution, experimental

--[no]incompatible_modify_execution_info_additive ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ การส่งแฟล็ก --modify_execution_info หลายรายการจะเป็นการเพิ่ม เมื่อปิดใช้ ระบบจะพิจารณาเฉพาะการแจ้งว่าไม่เหมาะสมครั้งล่าสุดเท่านั้น

แท็ก execution, affects_outputs, loading_and_analysis, incompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> มีการสะสมการใช้งานหลายครั้ง

เพิ่มหรือนำคีย์ออกจากข้อมูลการดำเนินการของการดำเนินการตามคำช่วยจำของการดำเนินการ ใช้กับการดำเนินการที่รองรับข้อมูลการดำเนินการเท่านั้น การดำเนินการทั่วไปหลายอย่างรองรับข้อมูลการดำเนินการ เช่น Genrule, CppCompile, Javac, StarlarkAction, TestRunner เมื่อระบุค่าหลายค่า ลำดับมีความสำคัญเนื่องจากนิพจน์ทั่วไปจำนวนมากอาจใช้กับตัวช่วยจำเดียวกัน

ไวยากรณ์: "regex=[+-]key,regex=[+-]key,..."

ตัวอย่าง '.=+x,.=-y,.=+z' จะเพิ่ม 'x' และ 'z' ลงใน และนำ 'y' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการทั้งหมด "Genrule=+requires-x" จะเพิ่ม "requires-x" ลงในข้อมูลการดำเนินการสำหรับการดำเนินการ Genrule ทั้งหมด '(?!Genrule).=-requires-x' จะนำ 'requires-x' ออกจากข้อมูลการดำเนินการสำหรับการดำเนินการที่ไม่ใช่ Genrule ทั้งหมด

แท็ก execution, affects_outputs, loading_and_analysis

--persistent_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android อย่างต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

แท็ก host_machine_resource_optimizations, execution

--persistent_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_dex_desugar

เปิดใช้การดำเนินการ dex และ desugar ของ Android แบบหลายรายการที่ต่อเนื่องโดยใช้ Worker

ขยายเป็น
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_resource_processor

เปิดใช้ตัวประมวลผลทรัพยากร Android แบบมัลติเพล็กซ์ถาวรโดยใช้ Worker

ขยายเป็น
  --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

แท็ก host_machine_resource_optimizations, execution

--persistent_multiplex_android_tools

เปิดใช้เครื่องมือ Android แบบถาวรและแบบมัลติเพล็กซ์ (dexing, desugaring, การประมวลผลทรัพยากร)

ขยายเป็น
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

แท็ก host_machine_resource_optimizations, execution

--[no]use_target_platform_for_tests ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้แพลตฟอร์มเป้าหมายเพื่อเรียกใช้การทดสอบแทนกลุ่มการทดสอบ

แท็ก execution

ตัวเลือกที่กำหนดค่าเครื่องมือที่ใช้สำหรับการดำเนินการ:
--android_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์เป้าหมายของ Android

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_manifest_merger=<legacy, android or force_android> ค่าเริ่มต้น: "android"

เลือกการผสานไฟล์ Manifest ที่จะใช้สำหรับกฎ android_binary Flag เพื่อช่วยในการเปลี่ยนไปใช้เครื่องมือผสานรวมไฟล์ Manifest ของ Android จากเครื่องมือผสานรวมเดิม

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--android_platforms=<a build target label> ค่าเริ่มต้น: ""

ตั้งค่าแพลตฟอร์มที่เป้าหมาย android_binary ใช้ หากระบุหลายแพลตฟอร์ม ไบนารีจะเป็น APK แบบ Fat ซึ่งมีไบนารีเนทีฟสำหรับแต่ละแพลตฟอร์มเป้าหมายที่ระบุ

แท็ก changes_inputs, loading_and_analysis, loses_incremental_state

--cc_output_directory_tag=<a string> ค่าเริ่มต้น: ""

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก affects_outputs

--compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

คอมไพเลอร์ C++ ที่จะใช้คอมไพล์เป้าหมาย

แท็ก loading_and_analysis, execution

--coverage_output_generator=<a build target label> default: "@bazel_tools//tools/test:lcov_merger"

ตำแหน่งของไบนารีที่ใช้ในการประมวลผลรายงานความครอบคลุมดิบ ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:lcov_merger"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

ตำแหน่งของไบนารีที่ใช้สร้างรายงานความครอบคลุม ต้องเป็นเป้าหมายแบบไบนารี ค่าเริ่มต้นคือ "//tools/test:coverage_report_generator"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

ตำแหน่งของไฟล์สนับสนุนที่จำเป็นในอินพุตของการดำเนินการทดสอบทุกครั้งที่รวบรวมความครอบคลุมของโค้ด ค่าเริ่มต้นคือ "//tools/test:coverage_support"

แท็ก changes_inputs, affects_outputs, loading_and_analysis

--custom_malloc=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุการติดตั้งใช้งาน malloc ที่กำหนดเอง การตั้งค่านี้จะลบล้างแอตทริบิวต์ malloc ในกฎการสร้าง

แท็ก changes_inputs, affects_outputs

--[no]experimental_include_xcode_execution_requirements ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode:{version}" ลงในการดำเนินการ Xcode ทุกรายการ หากเวอร์ชัน Xcode มีป้ายกำกับที่มีขีดกลาง ให้เพิ่มข้อกำหนดในการดำเนินการ "requires-xcode-label:{version_label}" ด้วย

แท็ก loses_incremental_state, loading_and_analysis, execution, experimental

--[no]experimental_prefer_mutual_xcode ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้ใช้ Xcode เวอร์ชันล่าสุดที่พร้อมใช้งานทั้งในเครื่องและจากระยะไกล หากเป็นเท็จ หรือหากไม่มีเวอร์ชันที่ใช้ร่วมกันได้ ให้ใช้ Xcode เวอร์ชันในเครื่องที่เลือกผ่าน xcode-select

แท็ก loses_incremental_state, experimental

--extra_execution_platforms=<comma-separated list of options> ค่าเริ่มต้น: ""

แพลตฟอร์มที่พร้อมใช้งานเป็นแพลตฟอร์มการดำเนินการเพื่อเรียกใช้การดำเนินการ คุณระบุแพลตฟอร์มได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณาแพลตฟอร์มเหล่านี้ก่อนแพลตฟอร์มที่ประกาศในไฟล์ WORKSPACE โดย register_execution_platforms() คุณตั้งค่าตัวเลือกนี้ได้เพียงครั้งเดียวเท่านั้น และอินสแตนซ์ในภายหลังจะลบล้างการตั้งค่าแฟล็กก่อนหน้า

แท็ก execution

--extra_toolchains=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

กฎ Toolchain ที่ควรพิจารณาในระหว่างการแก้ปัญหา Toolchain คุณระบุ Toolchain ได้โดยใช้เป้าหมายที่แน่นอนหรือรูปแบบเป้าหมาย ระบบจะพิจารณา Toolchain เหล่านี้ก่อน Toolchain ที่ประกาศไว้ในไฟล์ WORKSPACE โดย register_toolchains()

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

ป้ายกำกับสำหรับไลบรารี libc ที่เช็คอินแล้ว ค่าเริ่มต้นจะเลือกโดยเครื่องมือ Crosstool Toolchain และคุณแทบจะไม่ต้องลบล้างค่านี้เลย

แท็ก action_command_lines, affects_outputs

--host_compiler=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

แฟล็กที่ไม่มีการดำเนินการ จะนำออกในการเปิดตัวรุ่นต่อๆ ไป

แท็ก loading_and_analysis, execution

--host_grte_top=<a label> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุ การตั้งค่านี้จะลบล้างไดเรกทอรีระดับบนสุดของ libc (--grte_top) สำหรับการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายระบบโฮสต์

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--[no]incompatible_bazel_test_exec_run_under ค่าเริ่มต้น: "จริง"

หากเปิดใช้ "bazel test --run_under=//:runner" จะสร้าง "//:runner" ในการกำหนดค่าการดำเนินการ หากปิดใช้ ระบบจะสร้าง "//:runner" ในการกำหนดค่าเป้าหมาย Bazel จะเรียกใช้การทดสอบในเครื่องที่เรียกใช้ ดังนั้นคำสั่งแรกจึงถูกต้องกว่า การดำเนินการนี้จะไม่ส่งผลต่อ "bazel run" ซึ่งจะสร้าง "`--run_under=//foo" ในการกำหนดค่าเป้าหมายเสมอ

แท็ก affects_outputs, incompatible_change

--[no]incompatible_builtin_objc_strip_action ค่าเริ่มต้น: "จริง"

จะปล่อยการดำเนินการ Strip เป็นส่วนหนึ่งของการลิงก์ objc หรือไม่

แท็ก action_command_lines, incompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่เปิดใช้ฟีเจอร์ "โฮสต์" และ "ไม่ใช่โฮสต์" ในเครื่องมือ C++ (ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/7407)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_enable_apple_toolchain_resolution ค่าเริ่มต้น: "false"

ใช้การแก้ปัญหา Toolchain เพื่อเลือก Apple SDK สำหรับกฎ Apple (Starlark และเนทีฟ)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_remove_legacy_whole_archive ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะไม่ลิงก์ทรัพยากร Dependency ของไลบรารีเป็นทั้งอาร์ไคฟ์โดยค่าเริ่มต้น (ดูวิธีการย้ายข้อมูลที่ https://github.com/bazelbuild/bazel/issues/7362)

แท็ก loading_and_analysis, incompatible_change

--[no]incompatible_strip_executable_safely ค่าเริ่มต้น: "false"

หากเป็นจริง การลบข้อมูลการดำเนินการสำหรับไฟล์ที่เรียกใช้งานได้จะใช้แฟล็ก -x ซึ่งจะไม่ทำให้การแก้ปัญหาเกี่ยวกับสัญลักษณ์แบบไดนามิกหยุดทำงาน

แท็ก action_command_lines, incompatible_change

--[no]interface_shared_objects ค่าเริ่มต้น: "จริง"

ใช้ออบเจ็กต์ที่แชร์ของอินเทอร์เฟซหากชุดเครื่องมือรองรับ ปัจจุบัน Toolchain ELF ทั้งหมดรองรับการตั้งค่านี้

แท็ก loading_and_analysis, affects_outputs, affects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ iOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน iOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ iOS จาก "xcode_version"

แท็ก loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ macOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน macOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ macOS จาก "xcode_version"

แท็ก loses_incremental_state

--minimum_os_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันระบบปฏิบัติการขั้นต่ำที่การคอมไพล์ของคุณกำหนดเป้าหมาย

แท็ก loading_and_analysis, affects_outputs

--platform_mappings=<a main workspace-relative path> ค่าเริ่มต้น: ""

ตำแหน่งของไฟล์การแมปที่อธิบายว่าควรใช้แพลตฟอร์มใดหากไม่ได้ตั้งค่า หรือควรตั้งค่า Flag ใดเมื่อมีแพลตฟอร์มอยู่แล้ว ต้องสัมพันธ์กับรูทของพื้นที่ทำงานหลัก ค่าเริ่มต้นคือ "platform_mappings" (ไฟล์ที่อยู่ใต้รูทของพื้นที่ทำงานโดยตรง)

แท็ก affects_outputs, changes_inputs, loading_and_analysis, non_configurable

--platforms=<a build target label> ค่าเริ่มต้น: ""

ป้ายกำกับของกฎแพลตฟอร์มที่อธิบายแพลตฟอร์มเป้าหมายสำหรับคำสั่งปัจจุบัน

แท็ก affects_outputs, changes_inputs, loading_and_analysis

--python_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ของตัวแปล Python ที่เรียกใช้เพื่อเรียกใช้เป้าหมาย Python ในแพลตฟอร์มเป้าหมาย เลิกใช้งานแล้ว ปิดใช้โดย --incompatible_use_python_toolchains

แท็ก loading_and_analysis, affects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ tvOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน tvOS หากไม่ได้ระบุ ระบบจะใช้ SDK เวอร์ชันเริ่มต้นของ tvOS จาก "xcode_version"

แท็ก loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition ค่าเริ่มต้น: "false"

ทำให้ apple_crosstool_transition กลับไปใช้ค่าของแฟล็ก --platforms แทน --cpu แบบเดิมเมื่อจำเป็น

แท็ก loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ watchOS SDK ที่จะใช้ในการสร้างแอปพลิเคชัน watchOS หากไม่ได้ระบุ ให้ใช้ SDK เวอร์ชันเริ่มต้นของ watchOS จาก "xcode_version"

แท็ก loses_incremental_state

--xcode_version=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

หากระบุไว้ จะใช้ Xcode เวอร์ชันที่ระบุสำหรับการดำเนินการบิลด์ที่เกี่ยวข้อง หากไม่ได้ระบุ ระบบจะใช้ Xcode เวอร์ชันเริ่มต้นของตัวดำเนินการ

แท็ก loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ป้ายกำกับของกฎ xcode_config ที่จะใช้ในการเลือกเวอร์ชัน Xcode ในการกำหนดค่าบิลด์

แท็ก loses_incremental_state, loading_and_analysis

ตัวเลือกที่ควบคุมเอาต์พุตของคำสั่งมีดังนี้
--[no]apple_generate_dsym ค่าเริ่มต้น: "false"

จะสร้างไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่อง (.dSYM) หรือไม่

แท็ก affects_outputs, action_command_lines

หากเป็นจริง ให้สร้างป่าซิมลิงก์ของไฟล์ที่เรียกใช้ได้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้เขียนเฉพาะเมื่อจำเป็นต้องดำเนินการในพื้นที่ ทดสอบ หรือเรียกใช้คำสั่ง

แท็ก affects_outputs

--[no]build_runfile_manifests ค่าเริ่มต้น: "จริง"

หากเป็นจริง ให้เขียนไฟล์ Manifest ของไฟล์ที่ใช้เรียกใช้สำหรับเป้าหมายทั้งหมด หากเป็นเท็จ ให้ละเว้น การทดสอบในเครื่องจะทำงานไม่สำเร็จเมื่อเป็นเท็จ

แท็ก affects_outputs

--[no]build_test_dwp ค่าเริ่มต้น: "false"

หากเปิดใช้ เมื่อสร้างการทดสอบ C++ แบบคงที่และใช้ฟิชชัน ระบบจะสร้างไฟล์ .dwp สำหรับไบนารีการทดสอบโดยอัตโนมัติด้วย

แท็ก loading_and_analysis, affects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.h"

ตั้งค่าคำต่อท้ายของไฟล์ส่วนหัวที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> ค่าเริ่มต้น: ".pb.cc"

ตั้งค่าคำต่อท้ายของไฟล์ต้นฉบับที่ cc_proto_library สร้างขึ้น

แท็ก affects_outputs, loading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info ค่าเริ่มต้น: "false"

เรียกใช้การดำเนินการเพิ่มเติมสำหรับ API Java เวอร์ชันอื่นใน proto_library

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_save_feature_state ค่าเริ่มต้น: "false"

บันทึกสถานะของฟีเจอร์ที่เปิดใช้และที่ขอเป็นเอาต์พุตของการคอมไพล์

แท็ก affects_outputs, experimental

--fission=<a set of compilation modes> ค่าเริ่มต้น: "no"

ระบุโหมดการคอมไพล์ที่ใช้ฟิชชันสำหรับการคอมไพล์และการลิงก์ C++ อาจเป็นชุดค่าผสมใดก็ได้ของ {'fastbuild', 'dbg', 'opt'} หรือค่าพิเศษ 'yes' เพื่อเปิดใช้ทุกโหมด และ 'no' เพื่อปิดใช้ทุกโหมด

แท็ก loading_and_analysis, action_command_lines, affects_outputs

--[no]incompatible_always_include_files_in_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง กฎดั้งเดิมจะเพิ่ม <code>DefaultInfo.files</code> ของการขึ้นต่อกันของข้อมูลลงในไฟล์ที่เรียกใช้ ซึ่งตรงกับลักษณะการทำงานที่แนะนำสำหรับกฎ Starlark (https://bazel.build/extending/rules#runfiles_features_to_avoid)

แท็ก affects_outputs, incompatible_change

--[no]incompatible_compact_repo_mapping_manifest ค่าเริ่มต้น: "false"

หากเปิดใช้ ไฟล์ <binary>.repo_mapping จะส่งการแมป repo ของส่วนขยายโมดูลเพียงครั้งเดียวแทนที่จะส่งครั้งเดียวสำหรับแต่ละ repo ที่ส่วนขยายสร้างขึ้นซึ่งมีส่วนทำให้ไฟล์ที่ใช้ในการเรียกใช้

แท็ก affects_outputs, incompatible_change

--incompatible_disable_select_on=<comma-separated set of options> ค่าเริ่มต้น: ""

รายการแฟล็กที่ปิดใช้การใช้ใน select()

แท็ก loading_and_analysis, incompatible_change, non_configurable

--[no]incompatible_filegroup_runfiles_for_data ค่าเริ่มต้น: "จริง"

หากเป็นจริง ไฟล์ที่รันได้ของเป้าหมายที่ระบุไว้ในแอตทริบิวต์ srcs จะพร้อมใช้งานสำหรับเป้าหมายที่ใช้ filegroup เป็นการขึ้นต่อกันของข้อมูล

แท็ก incompatible_change

--[no]objc_generate_linkmap ค่าเริ่มต้น: "false"

ระบุว่าจะสร้างไฟล์ Linkmap หรือไม่

แท็ก affects_outputs

--[no]save_temps ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ระบบจะบันทึกเอาต์พุตชั่วคราวจาก gcc ซึ่งรวมถึงไฟล์ .s (โค้ดแอสเซมเบลอร์), ไฟล์ .i (C ที่ประมวลผลล่วงหน้า) และไฟล์ .ii (C++ ที่ประมวลผลล่วงหน้า)

แท็ก affects_outputs

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้นๆ ไม่ใช่การมีอยู่ของเอาต์พุต
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าเป้าหมาย ตัวแปรสามารถระบุได้โดยใช้ <code>name</code> ในกรณีนี้ ค่าจะนำมาจากสภาพแวดล้อมการเรียกใช้ โดยใช้คู่ <code>name=value</code> ซึ่งจะตั้งค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือใช้ <code>=name</code> ซึ่งจะยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม <br> โปรดทราบว่าหาก <code>--incompatible_repo_env_ignores_action_env</code> เป็นเท็จ คู่ <code>name=value</code> ทั้งหมดจะพร้อมใช้งานสำหรับกฎของที่เก็บ

แท็ก action_command_lines

--allowed_cpu_values=<comma-separated set of options> ค่าเริ่มต้น: ""

ค่าที่ใช้ได้สำหรับแฟล็ก --cpu

แท็ก changes_inputs, affects_outputs

--[no]android_databinding_use_androidx ค่าเริ่มต้น: "จริง"

สร้างไฟล์ Data Binding ที่เข้ากันได้กับ AndroidX ซึ่งใช้ได้กับ Data Binding v2 เท่านั้น แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]android_databinding_use_v3_4_args ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android กับอาร์กิวเมนต์ 3.4.0 แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--android_dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "ปิด"

กำหนดว่าจะลิงก์ C++ deps ของกฎ Android แบบไดนามิกหรือไม่เมื่อ cc_binary ไม่ได้สร้างไลบรารีที่ใช้ร่วมกันอย่างชัดเจน "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก affects_outputs, loading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> ค่าเริ่มต้น: "ตามตัวอักษร"

กำหนดลำดับของไฟล์ Manifest ที่ส่งผ่านไปยังโปรแกรมผสานไฟล์ Manifest สำหรับไบนารีของ Android ALPHABETICAL หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่เกี่ยวข้องกับ execroot ALPHABETICAL_BY_CONFIGURATION หมายความว่าระบบจะจัดเรียงไฟล์ Manifest ตามเส้นทางที่สัมพันธ์กับไดเรกทอรีการกำหนดค่าภายในไดเรกทอรีเอาต์พุต DEPENDENCY หมายความว่าไฟล์ Manifest จะเรียงตามลำดับโดยไฟล์ Manifest ของแต่ละไลบรารีจะอยู่ก่อนไฟล์ Manifest ของการอ้างอิง

แท็ก action_command_lines, execution

--[no]android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis

--[no]build_python_zip ค่าเริ่มต้น: "auto"

สร้างไฟล์ ZIP ที่ปฏิบัติการได้ของ Python โดยเปิดใน Windows และปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--catalyst_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple Catalyst

แท็ก loses_incremental_state, loading_and_analysis

--[no]collect_code_coverage ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะวัดประสิทธิภาพโค้ด (ใช้การวัดประสิทธิภาพแบบออฟไลน์หากเป็นไปได้) และจะรวบรวมข้อมูลความครอบคลุมระหว่างการทดสอบ โดยจะมีผลเฉพาะเป้าหมายที่ตรงกับ --instrumentation_filter โดยปกติแล้วไม่ควรกำหนดตัวเลือกนี้โดยตรง แต่ควรใช้คำสั่ง "bazel coverage" แทน

แท็ก affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] ค่าเริ่มต้น: "fastbuild"

ระบุโหมดที่จะสร้างไบนารี ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C

แท็ก action_command_lines, affects_outputs

--copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc

แท็ก action_command_lines, affects_outputs

--cpu=<a string> ค่าเริ่มต้น: ""

เลิกใช้งานแล้ว: Blaze ไม่ได้ใช้แฟล็กนี้ภายใน แต่มีการแมปแพลตฟอร์มเดิมเพื่อให้เข้ากันได้แบบย้อนหลัง อย่าใช้แฟล็กนี้ แต่ให้ใช้ --platforms กับคำจำกัดความแพลตฟอร์มที่เหมาะสมแทน

แท็ก changes_inputs, affects_outputs

--cs_fdo_absolute_path=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ CSFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อเส้นทางสัมบูรณ์ของไฟล์ ZIP ที่มีไฟล์โปรไฟล์ ไฟล์ LLVM โปรไฟล์แบบดิบ หรือไฟล์ LLVM โปรไฟล์ที่จัดทำดัชนี

แท็ก affects_outputs

--cs_fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO ที่คำนึงถึงบริบทเป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--cs_fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

cs_fdo_profile ที่แสดงโปรไฟล์ที่คำนึงถึงบริบทซึ่งจะใช้ในการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ C++

แท็ก action_command_lines, affects_outputs

--define=<a 'name=value' assignment> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือก --define แต่ละรายการจะระบุการกําหนดค่าสําหรับตัวแปรบิลด์ ในกรณีที่มีค่าหลายค่าสำหรับตัวแปร ค่าสุดท้ายจะเป็นค่าที่ใช้

แท็ก changes_inputs, affects_outputs

--dynamic_mode=<off, default or fully> ค่าเริ่มต้น: "default"

กำหนดว่าจะลิงก์ไบนารี C++ แบบไดนามิกหรือไม่ "default" หมายความว่า Bazel จะเลือกว่าจะลิงก์แบบไดนามิกหรือไม่ "ทั้งหมด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดแบบไดนามิก "ปิด" หมายความว่าระบบจะลิงก์ไลบรารีทั้งหมดในโหมดแบบคงที่เป็นส่วนใหญ่

แท็ก loading_and_analysis, affects_outputs

--[no]enable_propeller_optimize_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ Propeller Optimize จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_remaining_fdo_absolute_paths ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ การใช้เส้นทางแบบสัมบูรณ์สำหรับ FDO จะทำให้เกิดข้อผิดพลาด

แท็ก affects_outputs

--[no]enable_runfiles ค่าเริ่มต้น: "auto"

เปิดใช้ทรีลิงก์สัญลักษณ์ของไฟล์ที่เรียกใช้ โดยค่าเริ่มต้นจะปิดใน Windows และเปิดในแพลตฟอร์มอื่นๆ

แท็ก affects_outputs

--exec_aspects=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการ Aspect ที่คั่นด้วยคอมมาซึ่งจะใช้กับเป้าหมายที่กำหนดค่า exec ไม่ว่าจะเป็นเป้าหมายระดับบนสุดหรือไม่ก็ตาม นี่เป็นฟีเจอร์ทดลองและอาจมีการเปลี่ยนแปลง

แท็ก loading_and_analysis

--experimental_action_listener=<a build target label> มีการสะสมการใช้งานหลายครั้ง

เลิกใช้งานแล้วเพื่อใช้แง่มุมแทน ใช้ action_listener เพื่อแนบ extra_action ไปกับการดำเนินการบิลด์ที่มีอยู่

แท็ก execution, experimental

--[no]experimental_android_compress_java_resources ค่าเริ่มต้น: "false"

บีบอัดทรัพยากร Java ใน APK

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_databinding_v2 ค่าเริ่มต้น: "จริง"

ใช้ Data Binding v2 ของ Android แฟล็กนี้ไม่มีผล

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_android_resource_shrinking ค่าเริ่มต้น: "false"

เปิดใช้การลดขนาดทรัพยากรสำหรับ APK ของ android_binary ที่ใช้ ProGuard

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_android_rewrite_dexes_with_rex ค่าเริ่มต้น: "false"

ใช้เครื่องมือ rex เพื่อเขียนไฟล์ dex ใหม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_collect_code_coverage_for_generated_files ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลความครอบคลุมในการรวบรวมสำหรับไฟล์ที่สร้างขึ้นด้วย

แท็ก affects_outputs, experimental

--experimental_objc_fastbuild_options=<comma-separated list of options> ค่าเริ่มต้น: "-O0,-DDEBUG=1"

ใช้สตริงเหล่านี้เป็นตัวเลือกคอมไพเลอร์ objc fastbuild

แท็ก action_command_lines

--[no]experimental_omitfp ค่าเริ่มต้น: "false"

หากเป็นจริง ให้ใช้ libunwind สำหรับการคลายสแต็ก และคอมไพล์ด้วย -fomit-frame-pointer และ -fasynchronous-unwind-tables

แท็ก action_command_lines, affects_outputs, experimental

--experimental_output_paths=<off or strip> ค่าเริ่มต้น: "ปิด"

โมเดลที่จะใช้สำหรับตำแหน่งที่กฎในทรีเอาต์พุตเขียนเอาต์พุต โดยเฉพาะอย่างยิ่งสำหรับการสร้างแบบหลายแพลตฟอร์ม / หลายการกำหนดค่า ฟีเจอร์นี้ยังอยู่ในขั้นทดลอง ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/6526 การดำเนินการ Starlark สามารถเลือกใช้การแมปเส้นทางได้โดยการเพิ่มคีย์ "supports-path-mapping" ลงในพจนานุกรม "execution_requirements"

แท็ก loses_incremental_state, bazel_internal_configuration, affects_outputs, execution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> มีการสะสมการใช้งานหลายครั้ง

แต่ละรายการควรอยู่ในรูปแบบ label=value โดยที่ label หมายถึงแพลตฟอร์ม และ value คือชื่อย่อที่ต้องการเพื่อลบล้างชื่อ CPU ของแพลตฟอร์มในตัวแปร $(TARGET_CPU) make และเส้นทางเอาต์พุต ใช้เฉพาะเมื่อ --experimental_platform_in_output_dir, --incompatible_target_cpu_from_platform หรือ --incompatible_bep_cpu_from_platform เป็นจริง มีลำดับความสำคัญในการตั้งชื่อสูงสุด

แท็ก affects_outputs, experimental

--[no]experimental_platform_in_output_dir ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะใช้ชื่อย่อของแพลตฟอร์มเป้าหมายในชื่อไดเรกทอรีเอาต์พุตแทน CPU หากเป็น "อัตโนมัติ" ระบบจะใช้การตั้งค่านี้กับการกำหนดค่า exec เท่านั้น รูปแบบที่แน่นอนเป็นแบบทดลองและอาจมีการเปลี่ยนแปลง โดยในกรณีที่ตัวเลือก --platforms มีค่าไม่ตรงกัน 1 ค่า (ซึ่งเกิดขึ้นได้ยาก) ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์ม จากนั้น หากมีการลงทะเบียนชื่อย่อสำหรับแพลตฟอร์มปัจจุบันโดยใช้ --experimental_override_name_platform_in_output_dir ระบบจะใช้ชื่อย่อนั้น จากนั้น หากตั้งค่า --experimental_use_platforms_in_output_dir_legacy_heuristic ให้ใช้ชื่อย่อตามป้ายกำกับแพลตฟอร์มปัจจุบัน สุดท้ายนี้ ระบบจะใช้แฮชของตัวเลือกแพลตฟอร์มเป็นทางเลือกสุดท้าย

แท็ก affects_outputs, experimental

--[no]experimental_py_binaries_include_label ค่าเริ่มต้น: "false"

เป้าหมาย py_binary จะมีป้ายกำกับของตัวเองแม้ว่าจะปิดใช้การประทับเวลาไว้ก็ตาม

แท็ก affects_outputs, experimental

--[no]experimental_use_llvm_covmap ค่าเริ่มต้น: "false"

หากระบุไว้ Bazel จะสร้างข้อมูลแผนที่ความครอบคลุมของ llvm-cov แทน gcov เมื่อเปิดใช้ collect_code_coverage

แท็ก changes_inputs, affects_outputs, loading_and_analysis, experimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic ค่าเริ่มต้น: "จริง"

โปรดใช้แฟล็กนี้เป็นส่วนหนึ่งของกลยุทธ์การย้ายข้อมูลหรือการทดสอบที่แนะนำเท่านั้น โปรดทราบว่าฮิวริสติกมีข้อบกพร่องที่ทราบกันดี และขอแนะนำให้ย้ายข้อมูลไปใช้เฉพาะ --experimental_override_name_platform_in_output_dir

แท็ก affects_outputs, experimental

--fdo_instrument=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

สร้างไบนารีด้วยการใช้ FDO เป็นเครื่องมือ เมื่อใช้คอมไพเลอร์ Clang/LLVM ระบบจะยอมรับชื่อไดเรกทอรีที่จะทิ้งไฟล์โปรไฟล์ดิบในรันไทม์ด้วย

แท็ก affects_outputs

--fdo_optimize=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ FDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อไฟล์ ZIP ที่มีโครงสร้างไฟล์ .gcda, ไฟล์ AFDO ที่มีโปรไฟล์อัตโนมัติ หรือไฟล์โปรไฟล์ LLVM นอกจากนี้ แฟล็กนี้ยังยอมรับไฟล์ที่ระบุเป็นป้ายกำกับ (เช่น //foo/bar:file.afdo - คุณอาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้อง) และป้ายกำกับที่ชี้ไปยังเป้าหมาย fdo_profile กฎ fdo_profile จะมีผลแทนฟีเจอร์นี้

แท็ก affects_outputs

--fdo_prefetch_hints=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้คำแนะนำการดึงข้อมูลล่วงหน้าของแคช

แท็ก affects_outputs

--fdo_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

fdo_profile ที่แสดงโปรไฟล์ที่จะใช้สำหรับการเพิ่มประสิทธิภาพ

แท็ก affects_outputs

--features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่าเป้าหมาย การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ ดูเพิ่มเติมที่ --host_features

แท็ก changes_inputs, affects_outputs

--[no]force_pic ค่าเริ่มต้น: "false"

หากเปิดใช้ การคอมไพล์ C++ ทั้งหมดจะสร้างโค้ดที่ไม่ขึ้นกับตำแหน่ง ("-fPIC") ลิงก์จะเลือกใช้ไลบรารีที่สร้างไว้ล่วงหน้าแบบ PIC มากกว่าไลบรารีที่ไม่ใช่ PIC และลิงก์จะสร้างไฟล์ปฏิบัติการที่ไม่ขึ้นกับตำแหน่ง ("-pie")

แท็ก loading_and_analysis, affects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุชุดตัวแปรสภาพแวดล้อมที่พร้อมใช้งานสำหรับการดำเนินการที่มีการกำหนดค่าการดำเนินการ ตัวแปรสามารถระบุได้ทั้งตามชื่อ ในกรณีนี้ค่าจะมาจากสภาพแวดล้อมการเรียกใช้ ตามคู่ชื่อ=ค่าซึ่งกำหนดค่าโดยไม่ขึ้นอยู่กับสภาพแวดล้อมการเรียกใช้ หรือตาม <code>=name</code> ซึ่งยกเลิกการตั้งค่าตัวแปรที่มีชื่อนั้น ตัวเลือกนี้ใช้ได้หลายครั้ง สำหรับตัวเลือกที่ระบุสำหรับตัวแปรเดียวกัน ตัวเลือกที่ระบุล่าสุดจะชนะ ส่วนตัวเลือกสำหรับตัวแปรที่ต่างกันจะสะสม

แท็ก action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> ค่าเริ่มต้น: "opt"

ระบุโหมดที่จะใช้เครื่องมือในระหว่างการสร้าง ค่า: 'fastbuild', 'dbg', 'opt'

แท็ก affects_outputs, action_command_lines

--host_conlyopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C เมื่อคอมไพล์ไฟล์ต้นฉบับ C (แต่ไม่ใช่ C++) ในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_copt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_cpu=<a string> ค่าเริ่มต้น: ""

CPU ของโฮสต์

แท็ก changes_inputs, affects_outputs

--host_cxxopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ C++ สำหรับเครื่องมือที่สร้างในการกำหนดค่า exec

แท็ก action_command_lines, affects_outputs

--host_features=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบบจะเปิดหรือปิดใช้ฟีเจอร์ที่ระบุโดยค่าเริ่มต้นสำหรับเป้าหมายที่สร้างในการกำหนดค่า exec การระบุ -<ฟีเจอร์> จะเป็นการปิดใช้ฟีเจอร์ ฟีเจอร์เชิงลบจะลบล้างฟีเจอร์เชิงบวกเสมอ

แท็ก changes_inputs, affects_outputs

--host_linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Linker เมื่อลิงก์เครื่องมือในการกำหนดค่า Exec

แท็ก action_command_lines, affects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่ใช้ร่วมกันได้สำหรับเป้าหมายโฮสต์ หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังคอมไพเลอร์ C/C++ อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ในการกำหนดค่า exec ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก action_command_lines, affects_outputs

--[no]incompatible_auto_exec_groups ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ ระบบจะสร้างกลุ่มการดำเนินการโดยอัตโนมัติสำหรับเครื่องมือแต่ละชุดที่กฎใช้ หากต้องการให้กฎนี้ทำงานได้ คุณต้องระบุพารามิเตอร์ toolchain ในการดำเนินการของกฎ ดูข้อมูลเพิ่มเติมได้ที่ https://github.com/bazelbuild/bazel/issues/17134

แท็ก affects_outputs, incompatible_change

--[no]incompatible_merge_genfiles_directory ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะรวมไดเรกทอรี genfiles เข้ากับไดเรกทอรี bin

แท็ก affects_outputs, incompatible_change

--[no]incompatible_target_cpu_from_platform ค่าเริ่มต้น: "จริง"

หากระบุไว้ ระบบจะใช้ค่าของข้อจำกัด CPU (@platforms//cpu:cpu) ของแพลตฟอร์มเป้าหมายเพื่อตั้งค่าตัวแปร $(TARGET_CPU) make

แท็ก loading_and_analysis, incompatible_change

--[no]instrument_test_targets ค่าเริ่มต้น: "false"

เมื่อเปิดใช้ความครอบคลุม ให้ระบุว่าจะพิจารณากฎการทดสอบเครื่องมือหรือไม่ เมื่อตั้งค่าไว้ ระบบจะใช้เครื่องมือกับกฎการทดสอบที่รวมไว้โดย --instrumentation_filter ไม่เช่นนั้น ระบบจะยกเว้นกฎการทดสอบจากการวัดความครอบคลุมเสมอ

แท็ก affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> default: "-/javatests[/:],-/test/java[/:]"

เมื่อเปิดใช้ความครอบคลุม ระบบจะตรวจสอบเฉพาะกฎที่มีชื่อซึ่งรวมอยู่ในตัวกรองตามนิพจน์ทั่วไปที่ระบุ ระบบจะยกเว้นกฎที่ขึ้นต้นด้วย "-" แทน โปรดทราบว่าระบบจะตรวจสอบเฉพาะกฎที่ไม่ใช่การทดสอบ เว้นแต่จะเปิดใช้ --instrument_test_targets

แท็ก affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

iOS เวอร์ชันขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "ios_sdk_version"

แท็ก loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาเพื่อสร้าง ios_application ผลลัพธ์คือไบนารีแบบสากลที่มีสถาปัตยกรรมที่ระบุทั้งหมด

แท็ก loses_incremental_state, loading_and_analysis

--[no]legacy_whole_archive ค่าเริ่มต้น: "จริง"

เลิกใช้งานแล้ว ถูกแทนที่ด้วย --incompatible_remove_legacy_whole_archive (ดูรายละเอียดได้ที่ https://github.com/bazelbuild/bazel/issues/7362) เมื่อเปิดอยู่ ให้ใช้ --whole-archive สำหรับกฎ cc_binary ที่มี linkshared=True และ linkstatic=True หรือ '-static' ใน linkopts การตั้งค่านี้ใช้เพื่อให้มีความเข้ากันได้แบบย้อนหลังเท่านั้น ทางเลือกที่ดีกว่าคือการใช้ alwayslink=1 ในกรณีที่จำเป็น

แท็ก action_command_lines, affects_outputs, deprecated

--linkopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อลิงก์

แท็ก action_command_lines, affects_outputs

--ltobackendopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนแบ็กเอนด์ของ LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--ltoindexopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังขั้นตอนการจัดทำดัชนี LTO (ภายใต้ --features=thin_lto)

แท็ก action_command_lines, affects_outputs

--macos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple macOS

แท็ก loses_incremental_state, loading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน macOS ขั้นต่ำที่เข้ากันได้สำหรับเป้าหมาย หากไม่ได้ระบุ ให้ใช้ "macos_sdk_version"

แท็ก loses_incremental_state

--memprof_profile=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้โปรไฟล์ memprof

แท็ก affects_outputs

--[no]objc_debug_with_GLIBCXX ค่าเริ่มต้น: "false"

หากตั้งค่าไว้และตั้งค่าโหมดการคอมไพล์เป็น "dbg" ให้กำหนด GLIBCXX_DEBUG, GLIBCXX_DEBUG_PEDANTIC และ GLIBCPP_CONCEPT_CHECKS

แท็ก action_command_lines

--[no]objc_enable_binary_stripping ค่าเริ่มต้น: "false"

ว่าจะลบสัญลักษณ์และโค้ดที่ไม่ได้ใช้ในไบนารีที่ลิงก์หรือไม่ ระบบจะทำการลบไบนารีออกหากมีการระบุทั้งแฟล็กนี้และ --compilation_mode=opt

แท็ก action_command_lines

--objccopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง gcc เมื่อคอมไพล์ไฟล์ต้นฉบับ Objective-C/C++

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมเพื่อส่งไปยัง gcc อย่างเลือกเมื่อคอมไพล์ไฟล์บางไฟล์ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดยที่ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่ง gcc ของไฟล์ cc ทั้งหมดใน //foo/ ยกเว้น bar.cc

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมในการส่งไปยังแบ็กเอนด์ LTO อย่างเลือก (ภายใต้ --features=thin_lto) เมื่อคอมไพล์ออบเจ็กต์แบ็กเอนด์บางรายการ ตัวเลือกนี้ส่งได้หลายครั้ง ไวยากรณ์: regex_filter@option_1,option_2,...,option_n. โดย regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น ส่วน option_1 ถึง option_n หมายถึงตัวเลือกบรรทัดคำสั่งที่กำหนดเอง หากตัวเลือกมีคอมมา คุณต้องใส่เครื่องหมายคำพูดพร้อมแบ็กสแลช ตัวเลือกมี @ ได้ แต่จะใช้ @ ตัวแรกเท่านั้นในการแยกสตริง ตัวอย่าง: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 จะเพิ่มตัวเลือกบรรทัดคำสั่ง -O0 ลงในบรรทัดคำสั่งของแบ็กเอนด์ LTO ของไฟล์.o ทั้งหมดใน //foo/ ยกเว้น bar.o

แท็ก action_command_lines, affects_outputs

--platform_suffix=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุคำต่อท้ายที่จะเพิ่มลงในไดเรกทอรีการกำหนดค่า

แท็ก loses_incremental_state, affects_outputs, loading_and_analysis

--propeller_optimize=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ Propeller เพื่อเพิ่มประสิทธิภาพเป้าหมายการบิลด์ โปรไฟล์ Propeller ต้องประกอบด้วยไฟล์อย่างน้อย 1 ใน 2 ไฟล์ ได้แก่ โปรไฟล์ cc และโปรไฟล์ ld แฟล็กนี้ยอมรับป้ายกำกับการสร้างซึ่งต้องอ้างอิงไฟล์อินพุตโปรไฟล์ Propeller เช่น ไฟล์ BUILD ที่กำหนดป้ายกำกับใน a/b/BUILD:propeller_optimize( name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt",) อาจต้องเพิ่มคำสั่ง exports_files ลงในแพ็กเกจที่เกี่ยวข้องเพื่อให้ Bazel มองเห็นไฟล์เหล่านี้ ต้องใช้ตัวเลือกในรูปแบบ --propeller_optimize=//a/b:propeller_profile

แท็ก action_command_lines, affects_outputs

--propeller_optimize_absolute_cc_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางสัมบูรณ์ของไฟล์ cc_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อเส้นทางแบบสัมบูรณ์ของไฟล์ ld_profile สำหรับบิลด์ที่เพิ่มประสิทธิภาพของ Propeller

แท็ก affects_outputs

--run_under=<a prefix in front of command> ค่าเริ่มต้น: ดูคำอธิบาย

คำนำหน้าที่จะแทรกก่อนไฟล์ที่เรียกใช้งานได้สำหรับคำสั่ง "test" และ "run" หากค่าเป็น "foo -bar" และบรรทัดคำสั่งการดำเนินการคือ "test_binary -baz" บรรทัดคำสั่งสุดท้ายจะเป็น "foo -bar test_binary -baz" ซึ่งอาจเป็นป้ายกำกับสำหรับเป้าหมายที่เรียกใช้งานได้ด้วย ตัวอย่างเช่น 'valgrind', 'strace', 'strace -c', 'valgrind --quiet --num-callers=20', '//package:target', '//package:target --options'

แท็ก action_command_lines

--[no]share_native_deps ค่าเริ่มต้น: "จริง"

หากเป็นจริง ระบบจะแชร์ไลบรารีที่มาพร้อมเครื่องซึ่งมีฟังก์ชันการทำงานเหมือนกันในกลุ่มเป้าหมายต่างๆ

แท็ก loading_and_analysis, affects_outputs

--[no]stamp ค่าเริ่มต้น: "false"

ประทับเวลาไบนารีด้วยวันที่ ชื่อผู้ใช้ ชื่อโฮสต์ ข้อมูลพื้นที่ทำงาน ฯลฯ

แท็ก affects_outputs

--strip=<always, sometimes or never> ค่าเริ่มต้น: "บางครั้ง"

ระบุว่าจะลบไบนารีและไลบรารีที่ใช้ร่วมกันหรือไม่ (ใช้ "-Wl,--strip-debug") ค่าเริ่มต้นของ "บางครั้ง" หมายถึงการลบออกหาก --compilation_mode=fastbuild

แท็ก affects_outputs

--stripopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง strip เมื่อสร้างไบนารี "<name>.stripped"

แท็ก action_command_lines, affects_outputs

--tvos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารี Apple tvOS

แท็ก loses_incremental_state, loading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน tvOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ได้ระบุ ให้ใช้ "tvos_sdk_version"

แท็ก loses_incremental_state

--visionos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple visionOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_cpus=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

รายการสถาปัตยกรรมที่คั่นด้วยคอมมาซึ่งจะใช้สร้างไบนารีของ Apple watchOS

แท็ก loses_incremental_state, loading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชัน watchOS ขั้นต่ำที่เข้ากันได้สำหรับเครื่องจำลองและอุปกรณ์เป้าหมาย หากไม่ระบุ ให้ใช้ "watchos_sdk_version"

แท็ก loses_incremental_state

--xbinary_fdo=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ใช้ข้อมูลโปรไฟล์ XbinaryFDO เพื่อเพิ่มประสิทธิภาพการคอมไพล์ ระบุชื่อของโปรไฟล์ไบนารีข้ามเริ่มต้น เมื่อใช้ตัวเลือกนี้ร่วมกับ --fdo_instrument/--fdo_optimize/--fdo_profile ตัวเลือกเหล่านั้นจะมีผลเสมอราวกับว่าไม่ได้ระบุ xbinary_fdo

แท็ก affects_outputs

ตัวเลือกที่มีผลต่อความเข้มงวดของ Bazel ในการบังคับใช้ข้อมูลอินพุตการบิลด์ที่ถูกต้อง (คำจำกัดความของกฎ ชุดค่าสถานะ ฯลฯ)
--[no]check_visibility ค่าเริ่มต้น: "จริง"

หากปิดใช้ ข้อผิดพลาดด้านการมองเห็นในทรัพยากร Dependency เป้าหมายจะลดระดับเป็นคำเตือน

แท็ก build_file_semantics, non_configurable

--[no]desugar_for_android ค่าเริ่มต้น: "จริง"

จะแปลงไบต์โค้ด Java 8 ก่อน dexing หรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]desugar_java8_libs ค่าเริ่มต้น: "false"

จะรวมไลบรารี Java 8 ที่รองรับไว้ในแอปสำหรับอุปกรณ์รุ่นเดิมหรือไม่

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state, experimental

--[no]enforce_constraints ค่าเริ่มต้น: "จริง"

ตรวจสอบสภาพแวดล้อมที่แต่ละเป้าหมายเข้ากันได้ และรายงานข้อผิดพลาดหากเป้าหมายใดมีทรัพยากร Dependency ที่ไม่รองรับสภาพแวดล้อมเดียวกัน

แท็ก build_file_semantics

--[no]experimental_check_desugar_deps ค่าเริ่มต้น: "จริง"

เลือกว่าจะตรวจสอบการแยกส่วนที่ถูกต้องในระดับไบนารีของ Android หรือไม่

แท็ก eagerness_to_exit, loading_and_analysis, experimental

--[no]experimental_enforce_transitive_visibility ค่าเริ่มต้น: "false"

หากเป็นจริง ให้เปิดใช้ package()s เพื่อตั้งค่าแอตทริบิวต์ transitive_visibility เพื่อจำกัดแพ็กเกจที่อาจขึ้นอยู่กับแพ็กเกจเหล่านั้น

แท็ก build_file_semantics, experimental

--experimental_one_version_enforcement=<off, warning or error> ค่าเริ่มต้น: "ปิด"

เมื่อเปิดใช้ ให้บังคับว่ากฎ java_binary ต้องมีไฟล์คลาสเวอร์ชันเดียวกันในเส้นทางคลาสได้ไม่เกิน 1 รายการ การบังคับใช้นี้อาจทำให้บิลด์ใช้งานไม่ได้ หรืออาจส่งผลให้เกิดคำเตือนเท่านั้น

แท็ก loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "default"

หากเป็นจริง จะตรวจสอบว่าเป้าหมาย Java ประกาศเป้าหมายทั้งหมดที่ใช้โดยตรงเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit

--[no]incompatible_check_testonly_for_output_files ค่าเริ่มต้น: "false"

หากเปิดใช้ ให้ตรวจสอบ testonly สำหรับเป้าหมายที่ต้องมีก่อนซึ่งเป็นไฟล์เอาต์พุตโดยค้นหา testonly ของกฎการสร้าง ซึ่งตรงกับการตรวจสอบระดับการเข้าถึง

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_disable_native_android_rules ค่าเริ่มต้น: "false"

หากเปิดใช้ ระบบจะปิดใช้การใช้กฎ Android ดั้งเดิมโดยตรง โปรดใช้กฎ Android ของ Starlark จาก https://github.com/bazelbuild/rules_android

แท็ก eagerness_to_exit, incompatible_change

--[no]incompatible_disable_native_apple_binary_rule ค่าเริ่มต้น: "false"

ไม่มีการดำเนินการใดๆ เก็บไว้ที่นี่เพื่อความเข้ากันได้แบบย้อนหลัง

แท็ก eagerness_to_exit, incompatible_change

--[no]one_version_enforcement_on_java_tests ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้และตั้งค่า experimental_one_version_enforcement เป็นค่าที่ไม่ใช่ NONE ให้บังคับใช้เวอร์ชันเดียวกับเป้าหมาย java_test คุณปิดใช้ Flag นี้ได้เพื่อปรับปรุงประสิทธิภาพการทดสอบแบบเพิ่มขึ้น โดยอาจทำให้พลาดการละเมิดแบบเวอร์ชันเดียวที่อาจเกิดขึ้น

แท็ก loading_and_analysis

--python_native_rules_allowlist=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

รายการที่อนุญาต (เป้าหมาย package_group) ที่จะใช้เมื่อบังคับใช้ --incompatible_python_disallow_native_rules

แท็ก loading_and_analysis

--[no]strict_filesets ค่าเริ่มต้น: "false"

หากเปิดใช้ตัวเลือกนี้ ระบบจะรายงานชุดไฟล์ที่ข้ามขอบเขตแพ็กเกจเป็นข้อผิดพลาด

แท็ก build_file_semantics, eagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> ค่าเริ่มต้น: "error"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายที่ใช้โดยตรงทั้งหมดเป็นทรัพยากร Dependency อย่างชัดเจน

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--strict_public_imports=<off, warn, error, strict or default> ค่าเริ่มต้น: "ปิด"

เว้นแต่จะปิดอยู่ จะตรวจสอบว่าเป้าหมาย proto_library ประกาศเป้าหมายทั้งหมดที่ใช้ใน "import public" อย่างชัดเจนว่าส่งออกแล้ว

แท็ก build_file_semantics, eagerness_to_exit, incompatible_change

--[no]strict_system_includes ค่าเริ่มต้น: "false"

หากเป็นจริง คุณจะต้องประกาศส่วนหัวที่พบผ่านเส้นทางของระบบ (-isystem) ด้วย

แท็ก loading_and_analysis, eagerness_to_exit

--target_environment=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ประกาศสภาพแวดล้อมเป้าหมายของบิลด์นี้ ต้องเป็นการอ้างอิงป้ายกำกับไปยังกฎ "สภาพแวดล้อม" หากระบุไว้ เป้าหมายระดับบนสุดทั้งหมดต้องเข้ากันได้กับสภาพแวดล้อมนี้

แท็ก changes_inputs

ตัวเลือกที่มีผลต่อเอาต์พุตการลงนามของบิลด์
--apk_signing_method=<v1, v2, v1_v2 or v4> ค่าเริ่มต้น: "v1_v2"

การติดตั้งใช้งานเพื่อใช้ในการรับรอง APK

แท็ก action_command_lines, affects_outputs, loading_and_analysis

--[no]device_debug_entitlements ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้และโหมดการคอมไพล์ไม่ใช่ "opt" แอป objc จะมีสิทธิ์การแก้ไขข้อบกพร่องเมื่อลงนาม

แท็ก changes_inputs

--ios_signing_cert_name=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ชื่อใบรับรองที่จะใช้สำหรับการลงนามใน iOS หากไม่ได้ตั้งค่าไว้ ระบบจะเปลี่ยนกลับไปใช้โปรไฟล์การจัดสรร อาจเป็นค่ากำหนดข้อมูลประจำตัวในพวงกุญแจของใบรับรองหรือ (สตริงย่อย) ของชื่อทั่วไปของใบรับรอง ตามหน้า Man ของ codesign (ข้อมูลประจำตัวในการลงนาม)

แท็ก action_command_lines

ตัวเลือกนี้ส่งผลต่อความหมายของภาษา Starlark หรือ Build API ที่เข้าถึงได้ในไฟล์ BUILD, ไฟล์ .bzl หรือไฟล์ WORKSPACE ดังนี้
--[no]incompatible_disallow_sdk_frameworks_attributes ค่าเริ่มต้น: "false"

หากเป็น "จริง" จะไม่อนุญาตแอตทริบิวต์ sdk_frameworks และ weak_sdk_frameworks ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

หากเป็นจริง ให้ตั้งค่าเริ่มต้นเป็นจริงสำหรับแอตทริบิวต์ alwayslink ใน objc_library และ objc_import

แท็ก build_file_semantics, incompatible_change

--[no]incompatible_python_disallow_native_rules ค่าเริ่มต้น: "false"

เมื่อเป็นจริง จะเกิดข้อผิดพลาดเมื่อใช้กฎ py_* ในตัว แต่ควรใช้กฎ rule_python แทน ดูข้อมูลเพิ่มเติมและวิธีการย้ายข้อมูลได้ที่ https://github.com/bazelbuild/bazel/issues/17773

แท็ก loading_and_analysis, incompatible_change

ตัวเลือกที่ควบคุมลักษณะการทำงานของสภาพแวดล้อมการทดสอบหรือโปรแกรมเรียกใช้การทดสอบ
--[no]allow_analysis_failures ค่าเริ่มต้น: "false"

หากเป็นจริง การวิเคราะห์เป้าหมายของกฎไม่สำเร็จจะทำให้เป้าหมายเผยแพร่อินสแตนซ์ของ AnalysisFailureInfo ที่มีคำอธิบายข้อผิดพลาด แทนที่จะทำให้การสร้างไม่สำเร็จ

แท็ก loading_and_analysis, experimental

--analysis_testing_deps_limit=<an integer> ค่าเริ่มต้น: "2000"

กำหนดจำนวนการอ้างอิงแบบทรานซิทีฟสูงสุดผ่านแอตทริบิวต์กฎที่มีการเปลี่ยนการกำหนดค่า for_analysis_testing การเกินขีดจำกัดนี้จะทำให้เกิดข้อผิดพลาดของกฎ

แท็ก loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure ค่าเริ่มต้น: "false"

หากเป็นจริง การดำเนินการ dex2oat ที่ล้มเหลวจะทำให้บิลด์หยุดทำงานแทนที่จะเรียกใช้ dex2oat ในระหว่างรันไทม์ของการทดสอบ

แท็ก 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> มีการสะสมการใช้งานหลายครั้ง

ลบล้างจำนวนทรัพยากรเริ่มต้นสำหรับการทดสอบ รูปแบบที่คาดไว้คือ <resource>=<value> หากระบุตัวเลขบวกตัวเดียวเป็น <value> ระบบจะลบล้างทรัพยากรเริ่มต้นสำหรับขนาดการทดสอบทั้งหมด หากระบุตัวเลข 4 ตัวที่คั่นด้วยคอมมา ตัวเลขเหล่านั้นจะลบล้างจำนวนทรัพยากรสำหรับขนาดการทดสอบเล็ก กลาง ใหญ่ และใหญ่มากตามลำดับ นอกจากนี้ ค่าอาจเป็น HOST_RAM/HOST_CPU ตามด้วย [-|]<float> (เช่น memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4) ก็ได้ ทรัพยากรทดสอบเริ่มต้นที่ระบุโดยแฟล็กนี้จะถูกแทนที่ด้วยทรัพยากรที่ชัดเจนซึ่งระบุไว้ในแท็ก

--[no]experimental_android_use_parallel_dex2oat ค่าเริ่มต้น: "false"

ใช้ dex2oat แบบคู่ขนานเพื่อเพิ่มความเร็ว android_test

แท็ก loading_and_analysis, host_machine_resource_optimizations, experimental

--[no]ios_memleaks ค่าเริ่มต้น: "false"

เปิดใช้การตรวจสอบหน่วยความจำรั่วในเป้าหมาย ios_test

แท็ก action_command_lines

--ios_simulator_device=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

อุปกรณ์ที่จะจำลองเมื่อเรียกใช้แอปพลิเคชัน iOS ในโปรแกรมจำลอง เช่น "iPhone 6" คุณดูรายการอุปกรณ์ได้โดยเรียกใช้ "xcrun simctl list devicetypes" ในเครื่องที่จะเรียกใช้โปรแกรมจำลอง

แท็ก test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> ค่าเริ่มต้น: ดูคำอธิบาย

เวอร์ชันของ iOS ที่จะเรียกใช้ในโปรแกรมจำลองเมื่อเรียกใช้หรือทดสอบ ระบบจะละเว้นพารามิเตอร์นี้สำหรับกฎ ios_test หากมีการระบุอุปกรณ์เป้าหมายในกฎ

แท็ก test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> มีการสะสมการใช้งานหลายครั้ง

ระบุจำนวนครั้งที่จะเรียกใช้การทดสอบแต่ละครั้ง หากการพยายามดังกล่าวไม่สำเร็จไม่ว่าด้วยเหตุผลใดก็ตาม ระบบจะถือว่าการทดสอบทั้งหมดไม่สำเร็จ โดยปกติแล้วค่าที่ระบุจะเป็นเพียงจำนวนเต็ม ตัวอย่าง: --runs_per_test=3 จะเรียกใช้การทดสอบทั้งหมด 3 ครั้ง ไวยากรณ์อื่น: regex_filter@runs_per_test โดย runs_per_test หมายถึงค่าจำนวนเต็ม และ regex_filter หมายถึงรายการรูปแบบนิพจน์ทั่วไปที่รวมและยกเว้น (ดู --instrumentation_filter ด้วย) ตัวอย่าง: --runs_per_test=//foo/.,-//foo/bar/.@3 จะเรียกใช้การทดสอบทั้งหมดใน //foo/ ยกเว้นการทดสอบที่อยู่ภายใต้ foo/bar 3 ครั้ง ตัวเลือกนี้ส่งได้หลายครั้ง อาร์กิวเมนต์ที่ส่งผ่านล่าสุดซึ่งตรงกันจะมีความสำคัญเหนือกว่า หากไม่มีรายการใดตรงกัน ระบบจะทำการทดสอบเพียงครั้งเดียว

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวแปรสภาพแวดล้อมเพิ่มเติมที่จะแทรกลงในสภาพแวดล้อมของโปรแกรมเรียกใช้การทดสอบ ตัวแปรอาจระบุโดย <code>name</code> ในกรณีนี้ ค่าจะอ่านจากสภาพแวดล้อมไคลเอ็นต์ Bazel หรือโดยคู่ <code>name=value</code> คุณยกเลิกการตั้งค่าตัวแปรที่ตั้งไว้ก่อนหน้านี้ได้ผ่าน <code>=name</code> คุณใช้ตัวเลือกนี้ได้หลายครั้งเพื่อระบุตัวแปรหลายรายการ ใช้โดยคำสั่ง "bazel test" เท่านั้น

แท็ก test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> ค่าเริ่มต้น: "-1"

ลบล้างค่าการหมดเวลาทดสอบเริ่มต้นสำหรับการหมดเวลาทดสอบ (เป็นวินาที) หากระบุค่าจำนวนเต็มบวกค่าเดียว ค่าดังกล่าวจะลบล้างหมวดหมู่ทั้งหมด หากระบุจำนวนเต็ม 4 รายการที่คั่นด้วยคอมมา ระบบจะลบล้างการหมดเวลาสำหรับระยะเวลาสั้น ปานกลาง ยาว และไม่มีกำหนด (ตามลำดับ) ไม่ว่าจะอยู่ในรูปแบบใด ค่า -1 จะบอกให้ Blaze ใช้การหมดเวลาเริ่มต้นสำหรับหมวดหมู่นั้น

--[no]zip_undeclared_test_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง ระบบจะเก็บเอาต์พุตการทดสอบที่ไม่ได้ประกาศไว้ในไฟล์ ZIP

แท็ก test_runner

ตัวเลือกที่ทริกเกอร์การเพิ่มประสิทธิภาพเวลาบิลด์
--[no]experimental_filter_library_jar_with_program_jar ค่าเริ่มต้น: "false"

กรอง ProGuard ProgramJar เพื่อนำคลาสที่อยู่ใน LibraryJar ออก

แท็ก action_command_lines, experimental

--[no]experimental_inmemory_dotd_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์ .d ของ C++ ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_inmemory_jdeps_files ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ระบบจะส่งไฟล์การอ้างอิง (.jdeps) ที่สร้างจากการคอมไพล์ Java ผ่านหน่วยความจำโดยตรงจากโหนดการสร้างระยะไกลแทนที่จะเขียนลงในดิสก์

แท็ก loading_and_analysis, execution, affects_outputs, experimental

--[no]experimental_retain_test_configuration_across_testonly ค่าเริ่มต้น: "false"

เมื่อเปิดใช้แล้ว --trim_test_configuration จะไม่ตัดการกำหนดค่าการทดสอบสำหรับกฎที่ทำเครื่องหมาย testonly=1 ซึ่งมีจุดประสงค์เพื่อลดปัญหาความขัดแย้งในการดำเนินการเมื่อกฎที่ไม่ใช่การทดสอบขึ้นอยู่กับกฎ cc_test จะไม่มีผลหาก --trim_test_configuration เป็นเท็จ

แท็ก loading_and_analysis, loses_incremental_state, experimental

--[no]experimental_unsupported_and_brittle_include_scanning ค่าเริ่มต้น: "false"

ว่าจะจำกัดอินพุตให้เหลือเฉพาะการคอมไพล์ C/C++ โดยการแยกวิเคราะห์บรรทัด #include จากไฟล์อินพุตหรือไม่ ซึ่งจะช่วยปรับปรุงประสิทธิภาพและส่วนเพิ่มด้วยการลดขนาดของทรีอินพุตการคอมไพล์ อย่างไรก็ตาม การดำเนินการนี้อาจทำให้บิลด์หยุดทำงานได้เนื่องจากเครื่องมือสแกนการรวมไม่ได้ใช้ความหมายของตัวประมวลผล C ล่วงหน้าอย่างเต็มที่ โดยเฉพาะอย่างยิ่ง เครื่องมือนี้ไม่เข้าใจคำสั่ง #include แบบไดนามิกและไม่สนใจตรรกะแบบมีเงื่อนไขของตัวประมวลผลล่วงหน้า คุณต้องรับความเสี่ยงของการใช้งานเอง เราจะปิดปัญหาที่เกี่ยวข้องกับการแจ้งว่าไม่เหมาะสมนี้ทั้งหมด

แท็ก loading_and_analysis, execution, changes_inputs, experimental

--[no]incremental_dexing ค่าเริ่มต้น: "จริง"

ทำงานส่วนใหญ่ในการแยก dexing สำหรับไฟล์ Jar แต่ละไฟล์

แท็ก affects_outputs, loading_and_analysis, loses_incremental_state

--[no]objc_use_dotd_pruning ค่าเริ่มต้น: "จริง"

หากตั้งค่าไว้ ระบบจะใช้ไฟล์ .d ที่ clang ปล่อยออกมาเพื่อตัดชุดอินพุตที่ส่งไปยังการคอมไพล์ objc

แท็ก changes_inputs, loading_and_analysis

--[no]process_headers_in_dependencies ค่าเริ่มต้น: "false"

เมื่อสร้างเป้าหมาย //a:a ให้ประมวลผลส่วนหัวในเป้าหมายทั้งหมดที่ //a:a ขึ้นอยู่กับ (หากเปิดใช้การประมวลผลส่วนหัวสำหรับเครื่องมือ Toolchain)

แท็ก execution

--[no]trim_test_configuration ค่าเริ่มต้น: "จริง"

เมื่อเปิดใช้ ตัวเลือกที่เกี่ยวข้องกับการทดสอบจะล้างออกใต้ระดับบนสุดของบิลด์ เมื่อเปิดใช้ฟีเจอร์นี้ คุณจะสร้างการทดสอบเป็นทรัพยากร Dependency ของกฎที่ไม่ใช่การทดสอบไม่ได้ แต่การเปลี่ยนแปลงตัวเลือกที่เกี่ยวข้องกับการทดสอบจะไม่ทำให้ระบบวิเคราะห์กฎที่ไม่ใช่การทดสอบซ้ำ

แท็ก loading_and_analysis, loses_incremental_state

ตัวเลือกที่มีผลต่อความละเอียด รูปแบบ หรือตำแหน่งของการบันทึก:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> ค่าเริ่มต้น: "-.*"

พิมพ์ข้อมูลการแก้ไขข้อบกพร่องระหว่างการแก้ไข Toolchain โดยแฟล็กจะใช้นิพจน์ทั่วไป ซึ่งจะตรวจสอบกับประเภท Toolchain และเป้าหมายที่เฉพาะเจาะจงเพื่อดูว่าควรแก้ไขข้อบกพร่องของรายการใด คุณคั่นนิพจน์ทั่วไปหลายรายการด้วยคอมมาได้ จากนั้นระบบจะตรวจสอบนิพจน์ทั่วไปแต่ละรายการแยกกัน หมายเหตุ: เอาต์พุตของฟีเจอร์นี้มีความซับซ้อนมากและอาจมีประโยชน์เฉพาะผู้เชี่ยวชาญด้านการแก้ไข Toolchain เท่านั้น

แท็ก terminal_output

--[no]verbose_visibility_errors ค่าเริ่มต้น: "false"

หากเปิดใช้ ข้อผิดพลาดด้านระดับการมองเห็นจะมีข้อมูลการวินิจฉัยเพิ่มเติม

แท็ก build_file_semantics, non_configurable

ตัวเลือกที่ระบุหรือแก้ไขอินพุตทั่วไปสำหรับคำสั่ง Bazel ที่ไม่อยู่ในหมวดหมู่อื่นๆ
--flag_alias=<a 'name=value' flag alias> มีการสะสมการใช้งานหลายครั้ง

ตั้งชื่อย่อสำหรับแฟล็ก Starlark โดยจะรับคู่คีย์-ค่าเดียวในรูปแบบ "<key>=<value>" เป็นอาร์กิวเมนต์

แท็ก changes_inputs, non_configurable

--[no]incompatible_default_to_explicit_init_py ค่าเริ่มต้น: "false"

โดยแฟล็กนี้จะเปลี่ยนลักษณะการทำงานเริ่มต้นเพื่อให้ระบบไม่สร้างไฟล์ init.py ในไฟล์ที่เรียกใช้ของเป้าหมาย Python โดยอัตโนมัติอีกต่อไป กล่าวคือ เมื่อเป้าหมาย py_binary หรือ py_test มี legacy_create_init ตั้งค่าเป็น "auto" (ค่าเริ่มต้น) ระบบจะถือว่าเป็นเท็จก็ต่อเมื่อมีการตั้งค่าสถานะนี้ ดู https://github.com/bazelbuild/bazel/issues/10076

แท็ก affects_outputs, incompatible_change

ตัวเลือกอื่นๆ ที่ไม่ได้จัดหมวดหมู่ไว้:
--[no]cache_test_results [-t] default: "auto"

หากตั้งค่าเป็น "auto" Bazel จะเรียกใช้การทดสอบอีกครั้งในกรณีต่อไปนี้เท่านั้น (1) Bazel ตรวจพบการเปลี่ยนแปลงในการทดสอบหรือการขึ้นต่อกัน (2) มีการทำเครื่องหมายการทดสอบเป็นภายนอก (3) มีการขอเรียกใช้การทดสอบหลายครั้งด้วย --runs_per_test หรือ(4) การทดสอบล้มเหลวก่อนหน้านี้ หากตั้งค่าเป็น "ใช่" Bazel จะแคชผลการทดสอบทั้งหมด ยกเว้นการทดสอบที่ทำเครื่องหมายว่าเป็นการทดสอบภายนอก หากตั้งค่าเป็น "no" Bazel จะไม่แคชผลการทดสอบใดๆ

--[no]experimental_cancel_concurrent_tests ค่าเริ่มต้น: "ไม่เลย"

หากเป็น "on_failed" หรือ "on_passed" Blaze จะยกเลิกการทดสอบที่ทำงานพร้อมกันในการเรียกใช้ครั้งแรกที่มีผลลัพธ์ดังกล่าว ซึ่งจะมีประโยชน์เมื่อใช้ร่วมกับ --runs_per_test_detects_flakes เท่านั้น

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_fetch_all_coverage_outputs ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะดึงข้อมูลไดเรกทอรีข้อมูลความครอบคลุมทั้งหมดสำหรับการทดสอบแต่ละครั้งในระหว่างการเรียกใช้ความครอบคลุม

แท็ก affects_outputs, loading_and_analysis, experimental

--[no]experimental_generate_llvm_lcov ค่าเริ่มต้น: "false"

หากเป็นจริง ความครอบคลุมสำหรับ Clang จะสร้างรายงาน LCOV

แท็ก affects_outputs, loading_and_analysis, experimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> ค่าเริ่มต้น: "bazel"

เปิดใช้ Classpath ที่ลดลงสำหรับการคอมไพล์ Java

--[no]experimental_run_android_lint_on_java_rules ค่าเริ่มต้น: "false"

ว่าจะตรวจสอบแหล่งข้อมูล java_* หรือไม่

แท็ก affects_outputs, experimental

--[no]explicit_java_test_deps ค่าเริ่มต้น: "false"

ระบุการขึ้นต่อ JUnit หรือ Hamcrest อย่างชัดเจนใน java_test แทนที่จะรับจาก deps ของ TestRunner โดยไม่ตั้งใจ ขณะนี้ใช้ได้กับ Bazel เท่านั้น

--host_java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่เครื่องมือใช้ซึ่งจะดำเนินการในระหว่างการสร้าง

--host_javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์

--host_jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM เมื่อสร้างเครื่องมือที่เรียกใช้ระหว่างบิลด์ ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--[no]incompatible_check_sharding_support ค่าเริ่มต้น: "จริง"

หากเป็นจริง Bazel จะทำให้การทดสอบที่แยกส่วนล้มเหลวหากโปรแกรมเรียกใช้การทดสอบไม่ได้ระบุว่ารองรับการแยกส่วนโดยการแตะไฟล์ที่เส้นทางใน TEST_SHARD_STATUS_FILE หากเป็นเท็จ โปรแกรมเรียกใช้การทดสอบที่ไม่รองรับการแบ่งพาร์ติชันจะทำให้การทดสอบทั้งหมดทำงานในแต่ละพาร์ติชัน

แท็ก incompatible_change

--[no]incompatible_exclusive_test_sandboxed ค่าเริ่มต้น: "จริง"

หากเป็นจริง การทดสอบแบบเฉพาะจะทำงานร่วมกับกลยุทธ์แซนด์บ็อกซ์ เพิ่มแท็ก "local" เพื่อบังคับให้เรียกใช้การทดสอบแบบเฉพาะในเครื่อง

แท็ก incompatible_change

--[no]incompatible_strict_action_env ค่าเริ่มต้น: "false"

หากเป็นจริง Bazel จะใช้สภาพแวดล้อมที่มีค่าแบบคงที่สำหรับ PATH และจะไม่รับค่า LD_LIBRARY_PATH ใช้ --action_env=ENV_VARIABLE หากต้องการรับค่าตัวแปรสภาพแวดล้อมที่เฉพาะเจาะจงจากไคลเอ็นต์ แต่โปรดทราบว่าการทำเช่นนี้อาจป้องกันการแคชข้ามผู้ใช้หากใช้แคชที่แชร์

แท็ก loading_and_analysis, incompatible_change

--j2objc_translation_flags=<comma-separated list of options> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังเครื่องมือ J2ObjC

--java_debug

ทำให้เครื่องเสมือน Java ของการทดสอบ Java รอการเชื่อมต่อจากโปรแกรมแก้ไขข้อบกพร่องที่สอดคล้องกับ JDWP (เช่น jdb) ก่อนเริ่มการทดสอบ Implies -test_output=streamed.

ขยายเป็น
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps ค่าเริ่มต้น: "จริง"

สร้างข้อมูลการขึ้นต่อกัน (ตอนนี้คือ classpath เวลาคอมไพล์) ต่อเป้าหมาย Java

--[no]java_header_compilation ค่าเริ่มต้น: "จริง"

คอมไพล์ ijar จากแหล่งที่มาโดยตรง

--java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java

--java_launcher=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ตัวเรียกใช้ Java ที่จะใช้เมื่อสร้างไบนารี Java หากตั้งค่าแฟล็กนี้เป็นสตริงว่างเปล่า ระบบจะใช้ตัวเรียกใช้ JDK แอตทริบิวต์ "launcher" จะลบล้างแฟล็กนี้

--java_runtime_version=<a string> ค่าเริ่มต้น: "local_jdk"

เวอร์ชันรันไทม์ของ Java

--javacopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง javac

--jvmopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยัง Java VM ระบบจะเพิ่มตัวเลือกเหล่านี้ลงในตัวเลือกการเริ่มต้น VM ของเป้าหมาย java_binary แต่ละรายการ

--legacy_main_dex_list_generator=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้เพื่อสร้างรายการคลาสที่ต้องอยู่ใน dex หลักเมื่อคอมไพล์ multidex เดิม

--optimizing_dexer=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุไบนารีที่จะใช้ในการทำ dexing โดยไม่ต้องใช้การแยกส่วน

--plugin=<a build target label> มีการสะสมการใช้งานหลายครั้ง

ปลั๊กอินที่จะใช้ในการสร้าง ปัจจุบันใช้ได้กับ java_plugin

--proguard_top=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุเวอร์ชันของ ProGuard ที่จะใช้ในการนำโค้ดออกเมื่อสร้างไบนารี Java

--proto_compiler=<a build target label> default: "@bazel_tools//tools/proto:protoc"

ป้ายกำกับของโปรโตคอมไพเลอร์

แท็ก affects_outputs, loading_and_analysis

--[no]proto_profile ค่าเริ่มต้น: "จริง"

ว่าจะส่ง profile_path ไปยังคอมไพเลอร์โปรโตหรือไม่

แท็ก affects_outputs, loading_and_analysis

--proto_profile_path=<a build target label> ค่าเริ่มต้น: ดูคำอธิบาย

โปรไฟล์ที่จะส่งไปยังคอมไพเลอร์โปรโตคอลเป็น profile_path หากไม่ได้ตั้งค่า แต่ --proto_profile เป็นจริง (ค่าเริ่มต้น) ระบบจะอนุมานเส้นทางจาก --fdo_optimize

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_cc=<a build target label> default: "@bazel_tools//tools/proto:cc_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ C++

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> ค่าเริ่มต้น: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์โปรโตคอล j2objc

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_java=<a build target label> default: "@bazel_tools//tools/proto:java_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ Java

แท็ก affects_outputs, loading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

ป้ายกำกับของ proto_lang_toolchain() ซึ่งอธิบายวิธีคอมไพล์ Proto ของ JavaLite

แท็ก affects_outputs, loading_and_analysis

--protocopt=<a string> มีการสะสมการใช้งานหลายครั้ง

ตัวเลือกเพิ่มเติมที่จะส่งไปยังคอมไพเลอร์ Protobuf

แท็ก affects_outputs

--[no]runs_per_test_detects_flakes ค่าเริ่มต้น: "false"

หากเป็นจริง ชาร์ดใดก็ตามที่มีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ผ่านและมีการทดสอบ/ความพยายามอย่างน้อย 1 รายการที่ไม่ผ่านจะได้รับสถานะไม่น่าเชื่อถือ

--shell_executable=<a path> ค่าเริ่มต้น: ดูคำอธิบาย

เส้นทางสัมบูรณ์ไปยังไฟล์ปฏิบัติการของเชลล์เพื่อให้ Bazel ใช้ หากไม่ได้ตั้งค่านี้ แต่ตั้งค่าตัวแปรสภาพแวดล้อม BAZEL_SH ในการเรียกใช้ Bazel ครั้งแรก (ที่เริ่มต้นเซิร์ฟเวอร์ Bazel) Bazel จะใช้ตัวแปรนั้น หากไม่ได้ตั้งค่าทั้ง 2 อย่าง Bazel จะใช้เส้นทางเริ่มต้นที่ฮาร์ดโค้ดไว้โดยขึ้นอยู่กับระบบปฏิบัติการที่ทำงาน (Windows: c:/msys64/usr/bin/bash.exe, FreeBSD: /usr/local/bin/bash, อื่นๆ ทั้งหมด: /bin/bash) โปรดทราบว่าการใช้เชลล์ที่ไม่รองรับ bash อาจทำให้บิลด์ล้มเหลวหรือไบนารีที่สร้างขึ้นรันไทม์ล้มเหลว

แท็ก loading_and_analysis

--test_arg=<a string> มีการสะสมการใช้งานหลายครั้ง

ระบุตัวเลือกและอาร์กิวเมนต์เพิ่มเติมที่ควรส่งไปยังไฟล์ปฏิบัติการทดสอบ ใช้ได้หลายครั้งเพื่อระบุอาร์กิวเมนต์หลายรายการ หากมีการเรียกใช้การทดสอบหลายรายการ การทดสอบแต่ละรายการจะได้รับอาร์กิวเมนต์ที่เหมือนกัน ใช้โดยคำสั่ง "bazel test" เท่านั้น

--test_filter=<a string> ค่าเริ่มต้น: ดูคำอธิบาย

ระบุตัวกรองที่จะส่งต่อให้กับเฟรมเวิร์กการทดสอบ ใช้เพื่อจำกัดการทดสอบที่เรียกใช้ โปรดทราบว่าการดำเนินการนี้ไม่มีผลต่อเป้าหมายที่จะสร้าง

--test_result_expiration=<an integer> ค่าเริ่มต้น: "-1"

ตัวเลือกนี้เลิกใช้งานแล้วและไม่มีผล

--[no]test_runner_fail_fast ค่าเริ่มต้น: "false"

ส่งต่อตัวเลือก "ล้มเหลวอย่างรวดเร็ว" ไปยังโปรแกรมเรียกใช้การทดสอบ โปรแกรมเรียกใช้การทดสอบควรหยุดการดำเนินการเมื่อเกิดข้อผิดพลาดครั้งแรก

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> ค่าเริ่มต้น: "explicit"

ระบุกลยุทธ์สำหรับการแบ่งการทดสอบ: "explicit" เพื่อใช้การแบ่งก็ต่อเมื่อมีแอตทริบิวต์ BUILD "shard_count" "disabled" เพื่อไม่ให้ใช้การแบ่งพาร์ติชันการทดสอบ 'forced=k' เพื่อบังคับใช้ Shard 'k' สำหรับการทดสอบโดยไม่คำนึงถึงแอตทริบิวต์ BUILD ของ 'shard_count'

--tool_java_language_version=<a string> ค่าเริ่มต้น: ""

เวอร์ชันภาษา Java ที่ใช้ในการเรียกใช้เครื่องมือที่จำเป็นในระหว่างการสร้าง

--tool_java_runtime_version=<a string> ค่าเริ่มต้น: "remotejdk_11"

เวอร์ชันรันไทม์ Java ที่ใช้ในการเรียกใช้เครื่องมือระหว่างการสร้าง

--[no]use_ijars ค่าเริ่มต้น: "จริง"

หากเปิดใช้ ตัวเลือกนี้จะทำให้การคอมไพล์ Java ใช้ JAR ของอินเทอร์เฟซ ซึ่งจะทําให้การคอมไพล์ที่เพิ่มขึ้นเร็วขึ้น แต่ข้อความแสดงข้อผิดพลาดอาจแตกต่างกัน

ตัวเลือกเวอร์ชัน

ตัวเลือกที่ช่วยให้ผู้ใช้กำหนดค่าเอาต์พุตที่ต้องการ ซึ่งจะส่งผลต่อค่าของเอาต์พุตนั้น ไม่ใช่การมีอยู่ของเอาต์พุต
--[no]gnu_format ค่าเริ่มต้น: "false"

หากตั้งค่าไว้ ให้เขียนเวอร์ชันไปยัง stdout โดยใช้รูปแบบที่อธิบายไว้ในมาตรฐาน GNU

แท็ก affects_outputs, execution

แท็กเอฟเฟกต์ตัวเลือก

unknown ตัวเลือกนี้มีผลที่ไม่รู้จักหรือไม่ได้รับการบันทึก
no_op ตัวเลือกนี้จะไม่มีผลใดๆ
loses_incremental_state การเปลี่ยนค่าของตัวเลือกนี้อาจทำให้สถานะที่เพิ่มขึ้นสูญหายไปอย่างมาก ซึ่งจะทำให้การสร้างช้าลง สถานะอาจหายไปเนื่องจากการรีสตาร์ทเซิร์ฟเวอร์หรือการล้างข้อมูลส่วนใหญ่ของกราฟการอ้างอิง
changes_inputs ตัวเลือกนี้จะเปลี่ยนอินพุตที่ Bazel พิจารณาสำหรับการสร้างอย่างจริงจัง เช่น ข้อจำกัดของระบบไฟล์ เวอร์ชันที่เก็บ หรือตัวเลือกอื่นๆ
affects_outputs ตัวเลือกนี้จะส่งผลต่อเอาต์พุตของ Bazel แท็กนี้ตั้งใจให้ครอบคลุมในวงกว้าง อาจรวมถึงผลกระทบที่ส่งต่อกัน และไม่ได้ระบุประเภทเอาต์พุตที่ได้รับผลกระทบ
build_file_semantics ตัวเลือกนี้มีผลต่อความหมายของไฟล์ BUILD หรือ .bzl
bazel_internal_configuration ตัวเลือกนี้ส่งผลต่อการตั้งค่าของกลไกภายในของ Bazel แท็กนี้ไม่ได้หมายความว่าอาร์ติแฟกต์บิลด์จะได้รับผลกระทบ
loading_and_analysis ตัวเลือกนี้มีผลต่อการโหลดและการวิเคราะห์ทรัพยากร Dependency รวมถึงการสร้างกราฟ Dependency
execution ตัวเลือกนี้จะส่งผลต่อระยะการดำเนินการ เช่น ตัวเลือกที่เกี่ยวข้องกับแซนด์บ็อกซ์หรือการดำเนินการจากระยะไกล
host_machine_resource_optimizations ตัวเลือกนี้จะทริกเกอร์การเพิ่มประสิทธิภาพที่อาจเฉพาะเจาะจงกับเครื่องและไม่รับประกันว่าจะทำงานได้ในทุกเครื่อง การเพิ่มประสิทธิภาพอาจรวมถึงการแลกเปลี่ยนกับด้านอื่นๆ ของประสิทธิภาพ เช่น ต้นทุนหน่วยความจำหรือ CPU
eagerness_to_exit ตัวเลือกนี้จะเปลี่ยนวิธีที่ Bazel จะออกจากความล้มเหลว โดยมีตัวเลือกให้เลือกระหว่างดำเนินการต่อแม้จะเกิดข้อผิดพลาดและสิ้นสุดการเรียกใช้
bazel_monitoring ตัวเลือกนี้ใช้เพื่อตรวจสอบลักษณะการทำงานและประสิทธิภาพของ Bazel
terminal_output ตัวเลือกนี้ส่งผลต่อเอาต์พุตของเทอร์มินัลของ Bazel
action_command_lines ตัวเลือกนี้จะเปลี่ยนอาร์กิวเมนต์บรรทัดคำสั่งของการดำเนินการบิลด์อย่างน้อย 1 รายการ
test_runner ตัวเลือกนี้จะเปลี่ยนสภาพแวดล้อม Testrunner ของบิลด์

แท็กข้อมูลเมตาของตัวเลือก

experimental ตัวเลือกนี้จะเรียกใช้ฟีเจอร์ทดลองโดยไม่มีการรับประกันฟังก์ชันการทำงาน
incompatible_change ตัวเลือกนี้จะทําให้เกิดการเปลี่ยนแปลงที่ทําให้ใช้งานร่วมกันไม่ได้ ใช้ตัวเลือกนี้เพื่อทดสอบความพร้อมในการย้ายข้อมูลหรือรับสิทธิ์ทดลองใช้ฟีเจอร์ใหม่ก่อนเปิดตัว
deprecated ตัวเลือกนี้เลิกใช้งานแล้ว อาจเป็นเพราะฟีเจอร์ที่ได้รับผลกระทบถูกเลิกใช้งานแล้ว หรือเราต้องการให้คุณใช้วิธีอื่นในการระบุข้อมูล
non_configurable คุณจะเปลี่ยนตัวเลือกนี้ในการเปลี่ยนผ่านหรือใช้ในคำสั่ง select() ไม่ได้