登录
首页 >  Golang >  Go问答

解决 Bazel 和 Gazelle grep 错误的方法

来源:stackoverflow

时间:2024-02-08 20:03:20 452浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《解决 Bazel 和 Gazelle grep 错误的方法》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

我在我的 golang 项目中使用 Bazel 和 Gazelle。(Windows 环境) 我认为一切都已正确安装和设置。 但我在CMD中输入“bazel run -s //:gazelle” 有人可以帮忙吗?谢谢!


正确答案


这似乎是 gazelle 启动脚本如何查找清单文件的问题。如果你打开“execroot\code\bazel-out\x64_windows-fastbuild\bin\gazelle”,你会发现运行gazelle时调用的bash脚本。

取消写保护,并转到第39行:

if grep -q "^$runfile" "$0.runfiles_manifest"; then
    grep "^$runfile" "$0.runfiles_manifest" | head -n 1 | cut -d' ' -f2
    return

请注意,这部分脚本搜索 $0.runfiles_manifest$0 是正在运行的脚本,因此 gazelle 在我的系统上,文件 gazelle.runfiles_manifest 不存在,但 gazelle.exe.runfiles_manifest 存在。因此,我在此处添加了 .exe 扩展,并且至少完成了脚本的该部分。

但是,这对我没有多大帮助 - 即使 grep 命令成功,后续也会发生一些错误。

INFO: Analyzed target //:gazelle (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
Target //:gazelle up-to-date:
  bazel-bin/gazelle-runner.bash
  bazel-bin/gazelle
  bazel-bin/gazelle.exe
INFO: Elapsed time: 3.659s, Critical Path: 0.02s
INFO: 1 process: 1 internal.
INFO: Build completed successfully, 1 total action
INFO: Running command line: bazel-bin/gazelle.exe
2023/05/15 17:22:57 failed to initialize parser: Runfile python/parse: could not locate file

我使用的是 bazel 版本 6.1.2。无论如何,最好在 github 上提出问题以获得更好的支持。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>