是的,可以使用Bazel中的“subinclude”来实现嵌套选择。
例如,在以下目录结构中,有一个BUILD文件:
my_project/
BUILD
foo/
BUILD
bar/
BUILD
baz/
BUILD
如果我们要在baz目录中引用foo //:foo,则可以在baz/BUILD文件中这样写:
subinclude("//foo/bar:BUILD")
然后,我们就可以使用foo //:foo中定义的所有规则。
注意,使用“subinclude”不会将子包含的BUILD文件添加到与Bazel相同的分析中。此外,子包含的BUILD文件也不能引用父目录中未声明的符号。