登录
首页 >  Golang >  Go问答

Go程序中出现“不允许导入循环”错误

来源:stackoverflow

时间:2024-03-17 18:09:27 324浏览 收藏

Go程序中出现“不允许导入循环”错误,错误信息为“import cycle not allowed”。此错误通常出现在导入路径循环引用时,即包A导入包B,而包B又导入包A。 在提供的示例代码中,没有明显的导入循环,但错误消息仍然存在。根据文章中给出的信息,该错误消息可能是错误的,因为消息中显示的包路径并未形成循环。

问题内容

我是 go 新手,我正在尝试制作一个显示当前时间和其他一些内容的程序:

// a terrible program.
package main
import (
        "fmt"
        "time"
)
// greeting returns a greeting with some info.
func greeting() string {
        return "hello flat world, the time is: " + time.now().string()
}
func main() {
        hotelname := "trivag"
        hotelname += "o"
        fmt.println(greeting())
        fmt.println("hotel: " + hotelname)
}

当我尝试使用 go run 运行它时,它显示导入周期错误:

import cycle not allowed
package main
        imports fmt
        imports errors
        imports runtime
        imports internal/bytealg
        imports internal/cpu
        imports runtime

这些是来自 go env 的 go 环境变量:

GOARCH="amd64"
GOBIN="amd64"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/dullgo/go"
GORACE=""
GOROOT="/home/dullgo/.local/go"
GOTOOLDIR="/home/dullgo/.local/go/pkg/tool/linux_amd64"
GO15VENDOREXPERIMENT="1"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"

编辑:.go文件直接放在~/go目录下。


解决方案


该错误消息似乎是错误的:不允许 import 循环 消息应该以相同的包路径开始和结束。

请填写 https://golang.org/issue/new 上的模板来提出问题。

本篇关于《Go程序中出现“不允许导入循环”错误》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>