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