对于瞪羚,如何从生成的importpath中删除src?

Because of the GoPath convention, I have all the code under src directory in my repo. Hence, the generated BUILD.bazel files have src appended to the importpaths. But imports to the go code from within the repo need to not have src in them. Hence, I have to update the generated importpath each time I add a new go directory.

I believe the support for go-prefix is on its way out. So I don't want to use that.

I can always update the importpath and add a #keep at the end to prevent subsequent updates. But, I was wondering if there was a way of controlling the generated importpath.

You can set the import path prefix in a subtree by adding a comment like this (replacing example.com/repo with whatever you want) to the build file in that subtree:

# gazelle:prefix example.com/repo

In your repo, you can set an empty prefix in the src directory. So in src/BUILD.bazel, add this comment:

# gazelle:prefix