Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
为 Bazel 做贡献
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
您可以通过多种方式帮助 Bazel 项目和生态系统。
提供反馈
在使用 Bazel 的过程中,您可能会发现一些可以改进的地方。
在以下情况下,您可以报告问题来提供帮助:
- Bazel 崩溃,或者您遇到只能使用
bazel
clean 解决的 bug。
- 文件不完整或不清晰。您还可以使用页面右上角的“创建问题”链接,从您正在查看的页面报告问题。
- 错误消息可以改进。
您可以通过以下方式与 Bazel 社区互动:
贡献代码
Bazel 是一个大型项目,对 Bazel 源代码进行更改可能很困难。
您可以通过以下方式为 Bazel 生态系统做出贡献:
- 通过提交拉取请求来帮助规则维护者。
- 创建新规则并将其开源。
- 为 Bazel 相关工具(例如迁移工具)做出贡献。
- 改进了 Bazel 与其他 IDE 和工具的集成。
在进行更改之前,请创建 GitHub 问题或发送电子邮件至 bazel-discuss@。
最有用的贡献是修复 bug 或添加功能(而不是样式、重构或“清理”更改)。您的更改应包含测试和文档,同时考虑到向后兼容性、可移植性以及对内存用量和性能的影响。
如需了解如何提交更改,请参阅补丁接受流程。
Bazel 的代码说明
Bazel 拥有一个大型代码库,其中包含位于多个位置的代码。如需了解详情,请参阅代码库指南。
Bazel 的结构如下:
- 客户端代码位于
src/main/cpp 中,并提供命令行界面。
- Protocol Buffers 位于
src/main/protobuf 中。
- 服务器代码位于
src/main/java 和 src/test/java 中。
- 主要由 SkyFrame 和一些实用程序组成的核心代码。
- 内置规则位于
com.google.devtools.build.lib.rules 和 com.google.devtools.build.lib.bazel.rules 中。您不妨先阅读编写规则的挑战。
- Java 原生接口位于
src/main/native 中。
- 编译 Bazel 部分的列表中介绍了各种语言支持工具。
搜索 Bazel 的源代码
如需快速搜索 Bazel 的源代码,请使用 Bazel 代码搜索。您可以浏览 Bazel 的代码库、分支和文件。您还可以查看历史记录、差异和归咎信息。如需了解详情,请参阅 Bazel 代码搜索用户指南。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2026-04-21。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2026-04-21。"],[],[]]