猿问

导入错误:golang.org/x/net/html 与 html

我在 golang 中使用“html”和“golang.org/x/net/html”。

它有同名错误。所以我这样命名其他名字。

net_html "golang.org/x/net/html"

我也试过这样

_ "golang.org/x/net/html"

但这对我没有影响。

你知道如何解决这个问题吗?


阿晨1998
浏览 163回答 2
2回答

心有法竹

使用_ "golang.org/x/net/html"你导入包但你切断了对它的所有访问,这仅在你需要导入包执行一些初始化而不是其他任何事情时使用。使用net_html "golang.org/x/net/html"是可以的,这正是您在这种情况下应该做的。如果你仍然收到“html redeclared as imported package ...”错误,那么你使用的 IDE 可能有问题,但通常 Go 编译器不会报错,你的代码应该可以正常运行。要亲眼看看它是否在正常环境中工作,请转到以下链接并尝试运行该程序,您会看到它可以编译并执行。 因此,如果net_html "golang.org/x/net/html"没有修复“html redeclared as imported package ...”错误,请尝试提供有关您的环境的更多信息,例如您使用的 IDE、安装的 Go 版本等。

烙印99

当你使用同名的多个包时,正如你所经历的,Go 会抱怨导入的包名已经被声明过。PackageName为避免此问题,您必须像这样自定义导入包:import (    "html"    xhtml "golang.org/x/net/html")然后你可以通过像这样golang.org/x/net/html访问它来使用公共方法和结构:xhtmlpackage mainimport (    "html"    xhtml "golang.org/x/net/html")func main() {    // this will use `html` package    htmlEscape := html.EscapeString("< &")    // and this will use `golang.org/x/net/html` package    xHtmlEscape := xhtml.EscapeString("< &")}
随时随地看视频慕课网APP

相关分类

Go
我要回答