gpt4 book ai didi

go - 我如何告诉 goimports 更喜欢一个包而不是另一个包?

转载 作者:IT王子 更新时间:2023-10-29 01:20:10 53 4
gpt4 key购买 nike

这个文件:

package foo

func errorer() error {
return errors.New("Whoops")
}

将使用goimports 转换成这样:

package foo

import "errors"

func errorer() error {
return errors.New("Whoops")
}

但是,我想在这个项目的任何地方都使用github.com/pkg/errors 包,而不是errors 包。

我可以告诉 goimports 总是喜欢 github.com/pkg/errors 包吗?

最佳答案

使用 .goimportsignore在您的情况下不起作用,因为您要忽略的包在标准库中而不是在 GOPATH 下。

-local 标志也不会起作用,因为两个包具有相同的名称,所以 errors 仍然会被选中,而不是 pkg/errors .

您的选择是使用 golang.org/x/tools/imports 编写您自己的 goimports 版本

或者另一种不方便的方法是确保在新文件中第一次调用 error.Wrap 或其他函数之一,而不是 errors.New 所以goimports 可以识别 pkg/errors

关于go - 我如何告诉 goimports 更喜欢一个包而不是另一个包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40994957/

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