💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

在使用Bazel构建Python代码时,如果多个proto_library目标导致导入失败,可以在.bazelrc文件中添加标志:build --incompatible_default_to_explicit_init_py,以生成命名空间包,从而解决导入问题。

🎯

关键要点

  • 在使用Bazel构建Python代码时,多个proto_library目标可能导致导入失败。
  • Bazel默认生成非命名空间包,导致同一顶级路径下的包只加载第一个。
  • 可以在.bazelrc文件中添加标志:build --incompatible_default_to_explicit_init_py,以生成命名空间包。
  • 添加该标志后,所有导入将按预期工作。
  • 如果你的单体仓库有共享的Protocol Buffer依赖,建议使用该标志。
➡️

继续阅读