gpt4 book ai didi

Bazel 查询 deps 到文件

转载 作者:行者123 更新时间:2023-12-04 15:36:19 26 4
gpt4 key购买 nike

我有一个查询,可以有效地返回特定标签的依赖项的所有标签。我想知道这些依赖项的实际文件路径。

$ bazel query 'deps(//foo:bar)' --noimplicit_deps 
//baz:__init__.py
//baz:__baz__.py
--ouput location没有用,因为它只是告诉我这个相同的标签和构建文件:行

我想要的输出是:
/some/path/baz/__init__.py
/some/path/baz/baz.py

最佳答案

无法直接从查询命令中获取路径,但是 --output location结果可以很容易地用一个小 shell 转换成文件系统路径。这是 Bazel 存储库中的示例:

$ bazel query 'kind("source file", deps(//:srcs))' | sed  -e 's/:/\//' -e 's/^\/\+//' | head -n10
tools/zip/BUILD.tools
tools/zip/BUILD
tools/whitelists/config_feature_flag/BUILD
tools/whitelists/BUILD
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/SourceFileCoverageTest.java
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/MainTest.java
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/LineCoverageTest.java
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/LcovPrinterTest.java
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/LcovParserTest.java
tools/test/LcovMerger/javatests/com/google/devtools/lcovmerger/LcovMergerTestUtils.java

当然,如果您查询的目标实际上不是源文件,则会产生垃圾。通常,您需要使用 kind("source file", ...)过滤以确保您只输出真实文件。

关于Bazel 查询 deps 到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52193779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com