ระบบนิเวศ Bazel มีชุดกฎที่เพิ่มขึ้นและเปลี่ยนแปลงอยู่เสมอเพื่อรองรับภาษาและแพ็กเกจยอดนิยม จุดแข็งส่วนใหญ่ของ Bazel มาจากความสามารถในการกำหนดกฎใหม่ที่ผู้อื่นใช้ได้
หน้านี้จะอธิบายกฎ Bazel ที่แนะนำ กฎเนทีฟ และกฎที่ไม่ใช่เนทีฟ
กฎที่แนะนำ
ตัวอย่างกฎที่แนะนำมีดังนี้
- Android
- C / C++
- Docker/OCI
- Go
- Haskell
- Java
- JavaScript / NodeJS
- การจัดการทรัพยากรของ Maven
- Objective-C
- การสร้างแพ็กเกจ
- บัฟเฟอร์โปรโตคอล
- Python
- Rust
- Scala
- Shell
- Webtesting (Webdriver)
ที่เก็บ Skylib มีฟังก์ชันเพิ่มเติมที่มีประโยชน์เมื่อเขียนกฎใหม่และมาโครใหม่
กฎข้างต้นได้รับการตรวจสอบและเป็นไปตามข้อกำหนดสำหรับกฎที่แนะนำ โปรดติดต่อผู้ดูแลชุดกฎที่เกี่ยวข้องเกี่ยวกับปัญหาและคำขอฟีเจอร์
หากต้องการดูกฎ Bazel เพิ่มเติม ให้ใช้เครื่องมือค้นหา ไปที่ awesomebazel.com หรือค้นหาใน GitHub
กฎเนทีฟที่ไม่เกี่ยวข้องกับภาษาโปรแกรมที่เฉพาะเจาะจง
กฎแบบเนทีฟจะมาพร้อมกับไบนารี Bazel และพร้อมใช้งานเสมอในไฟล์ BUILD โดยไม่ต้องมีคำสั่ง load
- การดำเนินการเพิ่มเติม
- ทั่วไป
- แพลตฟอร์ม
- Workspace
กฎที่ฝังไว้ซึ่งไม่ใช่ภาษาของเนื้อหา
นอกจากนี้ Bazel ยังฝังกฎเพิ่มเติมที่เขียนด้วย Starlark ด้วย ซึ่งจะโหลดได้จากที่เก็บข้อมูลภายนอกในตัวของ @bazel_tools