使用_ "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 版本等。
当你使用同名的多个包时,正如你所经历的,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("< &")}