我正在使用“bazel-deps - 像”解决方案来保留我的第三方罐子。在一对maven_jar
存储库规则和java_import
规则中。
作为大型组织的一部分,我将所有托管依赖项同步到工作区。这使得我实际上使用了很多依赖目标。
运行bazel build //...
时出现问题 - 它引用所有java_import
(或scala_import
)并下载所有广告(即使是我不需要的广告)。
如果仅在其他目标中提及,我怎么能告诉bazel建立这些第三方目标。
我能想到的一个非常难看的解决方案是将所有内部目标移动到一个主文件夹:
+ third_party
| - com
| - org
+ internal
| - module-a
| - module-b
然后我可以通过运行bazel run //internal/...
来构建我的内部目标但是它远非优雅。
我很乐意在我不想建造的目标上加上某种旗帜,除非没有此旗帜的目标直接或传递地要求。
答案 0 :(得分:3)
带有tags = [“manual”]的目标将不会包含在通配符目标模式中(...,:*,:all等)。如果希望Bazel构建/测试它们,则应在命令行中使用显式目标模式指定此类测试目标。
https://docs.bazel.build/versions/master/user-manual.html#target-patterns