Replacing inconvenient package name. Got error: replacement module without version must be directory path (rooted or starting with ./ or ../)

Replacing inconvenient package name. Got error: replacement module without version must be directory path (rooted or starting with ./ or ../)

问题

我在 go.mod 文件中写道:

module github.com/Siiir/vector

go 1.17

require github.com/huandu/go-clone v1.3.2 // indirect
replace clone => github.com/huandu/go-clone[v1.3.2]

它说我不能做这样的更换。 我实际上用导入包的名称解决了我的问题。 没有那个破折号,它很方便并且可以工作。我发现我可以使用 clone.something 来引用一个函数。 无需输入 go-clone.something.
无论如何,假设包名确实很疯狂或不方便。我该如何更换它?

我看到的:

我尝试了什么:

  1. 正在使用终端:
  1. 手动编辑:

Anyway, assume that a package name is indeed crazy or inconvenient. How can I replace it?

你不能。

你不应该。导入路径是您在 import 声明中只写一次的东西,并且可以使用 import nicename "something.you.think/is-totally/inconvenient/and/unacceptable-to/your_taste" 在每个文件级别更改包名称。