我可以在我的 bazel 目标中提供相对 deps 路径吗?

Can I provide a relative deps path in my bazel target?

当我在 bazel 中指定构建规则时,我的依赖项要么是完整路径(从 repo 的根目录开始),要么只是目标名称(因为它在同一目录中):

cc_binary(
    name = "program",
    srcs = ["main.cpp"],
    deps = ["//a/full/path/to/the/library:lib",
            "foo"]
)

假设我正在从目录 "the".
编写构建规则 我希望做这样的事情:

cc_binary(
    name = "program",
    srcs = ["main.cpp"],
    deps = ["library:lib",
            "foo"]
)

这似乎不可能。有什么方法可以从 BUILD 文件的位置开始更深入地指定目标吗?

你不能。

Relative labels cannot be used to refer to targets in other packages; the complete package name must always be specified in this case

来自Bazel labels documentation