我在我的golang项目中使用了Bazel和Gazelle。(Windows环境)我认为一切都安装和设置正确。但是我在CMD中输入“bazel run -s //:gazelle”有人能帮忙吗?谢谢!x1c 0d1x
pkwftd7m1#
这似乎是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命令成功,也会发生一些后续错误。
$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上打开一个问题以获得更好的支持。
1条答案
按热度按时间pkwftd7m1#
这似乎是Gazelle启动脚本如何查找清单文件的问题。如果打开“execroot\code\bazel-out\x64_windows-fastbuild\bin\gazelle”,您将找到运行gazelle时调用的bash脚本。
删除写保护,然后转到第39行:
请注意,这部分脚本搜索
$0.runfiles_manifest
。$0
是正在运行的脚本,因此gazelle
在我的系统上,文件gazelle.runfiles_manifest
不存在,但gazelle.exe.runfiles_manifest
存在。因此,我在这里添加了.exe
扩展,至少脚本的这一部分完成了。但是,它并没有给我带来多大帮助--即使
grep
命令成功,也会发生一些后续错误。我使用的是bazel 6.1.2版本。在任何情况下,最好在GitHub上打开一个问题以获得更好的支持。