Bazel java_tools build的gtest依赖?

时间:2017-06-27 06:33:05

标签: bazel

我正在尝试遵循贡献者的说明:

https://bazel.build/contributing.html

我有一个成功的主人建立(即bazel build // src:bazel),但是文档也建议"你可能想要构建Bazel使用的各种工具。"我试图这样做,例如:

cd src/java_tools/singlejar
bazel build //...

但它失败了:

ERROR: /Users/.../bazel/third_party/protobuf/3.2.0/BUILD:621:1: no such target '//external:gtest': target 'gtest' not declared in package 'external' defined by /Users/plaird/scone/public/bazel/WORKSPACE and referenced by '//third_party/protobuf/3.2.0:test_plugin'.

我是否需要在本地构建gtest,然后将其添加到WORKSPACE文件中?

1 个答案:

答案 0 :(得分:1)

bazel build //...,无论你在哪里调用它,都会构建项目中的所有内容。看起来你可能想要的是bazel build //src/java_tools/singlejar/...,它将构建该目录下的所有目标。

但是,一般情况下,您可能不需要单独编译singlejar。我已经在Bazel工作了好几年,99%的时间你没有必要单独构建工具。

就你所得到的错误而言,如果我们能够建造//...会很好,但它并不是一个重要的优先事项。 protobuf代码构建很奇怪,我不建议尝试调试它,只是跳转到你想要实际工作的任何东西。