如何使用bazel查询确定目标的绝对路径?

如何使用bazel查询确定目标的绝对路径?,bazel,Bazel,问题: 是否有任何方法可以使用bazel query或aspects来识别bazel在包路径的何处拾取包?类似于which命令的内容 文档建议使用——show_package_location。但是,已弃用且不再受支持的,请参阅。此外,我尝试使用它并没有发现多少有用的信息。我尝试了bazel查询//some/target/--输出标签\u种类-显示\u包\u位置以及使用bazel build的其他排列,并且它不会向控制台输出添加任何不同的输出 动机 在我的包路径上有两个不同的目录用于获取、查询和

问题:

是否有任何方法可以使用
bazel query
aspects
来识别bazel在包路径的何处拾取包?类似于
which
命令的内容

文档建议使用
——show_package_location
。但是,已弃用且不再受支持的,请参阅。此外,我尝试使用它并没有发现多少有用的信息。我尝试了
bazel查询//some/target/--输出标签\u种类-显示\u包\u位置
以及使用
bazel build
的其他排列,并且它不会向控制台输出添加任何不同的输出

动机

在我的包路径上有两个不同的目录用于获取、查询和构建

--包路径=%workspace%:%workspace%/\uuuu保险丝

此配置支持这样一种工作流,即用户对我们的大型存储库执行稀疏签出,同时仍然能够生成尚未在本地签出的代码。构建目标时,Bazel会检查包的本地签出版本,如果不存在,它会搜索只读保险丝安装

有时,用户不清楚从何处获取软件包,即是本地签出的版本还是fuse提供的版本。当他们删除或移动Bazel软件包,并且Bazel在保险丝座上拾取版本时,这就成了问题

如果我能给他们指出一个命令,将每个包映射到它被提取的地方,那就太好了。例如,如果我在上运行命令

//some/package/foo --> package_path/some/package/foo
//some/package/bar --> other_package_path/some/package/bar 

我在bazel查询文档中完全忽略了这一点

对于bazel查询,我只需要添加
--输出位置
,因此,假设我进行如下查询:

bazel query //some/package/... --output location
然后将输出bazel查询

/absolute/path/some/package/BUILD:lineno:colno target_kind label
对于
//some/package/…