Go运行noVNC-audio-master遇import cycle错误求助
解决noVNC-audio-master中Go模块循环导入错误
错误原因
你遇到的import cycle not allowed是因为:
- 执行
go mod init golang.org/x/net/websocket时,把当前项目的模块名设成了官方websocket依赖的包路径 - 你的
main.go中又导入了golang.org/x/net/websocket,这就导致当前模块导入自身,形成循环依赖 command-line-arguments是Go对直接运行的单文件程序的默认包标识,提示你运行的代码和导入的包存在命名冲突
解决步骤
- 删除现有错误的模块文件:
rm go.mod go.sum
- 重新初始化模块,使用自定义的模块名(不要用第三方依赖的包路径,比如
novnc-audio):
go mod init novnc-audio
- 拉取并整理依赖:
go mod tidy
- 重新运行程序:
go run main.go --static ./static --vncAddress localhost:5900 --udpAddress :1234
注意事项
Go模块名是项目的唯一标识,必须避免与第三方依赖的包路径重复,否则会引发导入混淆或循环依赖问题。
内容的提问来源于stack exchange,提问作者deitz nuts
相关产品推荐
相关产品推荐

