2

我使用goimports自动重新格式化我的代码并使其干净并保持导入顺序。但有时它与 IDE 自动保存一起以一种不舒服的方式工作。就像在这种情况下:

  1. 我想在我的代码中添加新包。

  2. 然后我安装它dep ensure并刷新我的 IDE 缓存。

  3. 我可以轻松地使用带有 IDE 自动完成和导航的包。

goimportsIDE会发生什么?

  1. 我添加新包
  2. 为了运行,dep ensure我必须保存一个文件
  3. goimports找到未使用的包并将其从导入中删除。不好。

解决方法:

A. 手动添加新包dep ensure -add %packagename%

B. 禁用goimports并移动到gofmt-马马虎虎。

C. 不要在保存时自动格式化代码 - 不受欢迎。

如何设置更方便?

PS不确定标签godeps,但DEP在这里肯定是错误的。

4

1 回答 1

3

正确的解决方案是调用dep ensure -add package/name自己,然后开始使用包而不手动导入它,IDE 将确定您要使用该包并自动添加导入。您遇到的当前行为正是 IDE 所期望的,因为goimports在保存时调用,并且由于未使用导入,它将被自动删除。

于 2017-11-07T10:10:46.457 回答