Golang中解决无法加载包:找不到包“.”的问题
Golang中解决无法加载包:找不到包“.”的问题 我有两个存放Golang项目的文件夹。第一个文件夹中的所有项目都能正常工作,但另一个文件夹中的所有项目都出现"无法加载包:包 .:无法在以下位置找到包’.’"的错误。
- E:/Clouds/hubiC/GoLang/test/test.go
- E:/Clouds/OneDrive/CX/GoLang/test/test.go
使用相同的代码…
package main
func main() {
println("Hi")
return
}
第一个项目一切正常:
c:/go/bin/go.exe build -i [E:/Clouds/hubiC/GoLang/test] 成功:进程退出代码为0。
第二个项目出现问题:
c:/go/bin/go.exe build -i [E:/Clouds/OneDrive/CX/GoLang/test] 无法加载包:包 .:无法在以下位置找到包’.’:E:\Clouds\OneDrive\CX\GoLang\test 错误:进程退出代码为1。
为什么会发生这种情况?
我使用的Go版本是:
go version go1.10 windows/amd64
谢谢!
更多关于Golang中解决无法加载包:找不到包“.”的问题的实战教程也可以访问 https://www.itying.com/category-94-b0.html
OneDrive中的某些内容让读者感到困惑。这在Erlang生态系统中也是一个问题。这与Windows处理符号链接的方式有些关联。虽然我没有完全理解Erlang中的具体问题,但我了解这个普遍存在的现象。
更多关于Golang中解决无法加载包:找不到包“.”的问题的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
这个问题通常与Go模块(module)配置或GOPATH环境变量有关。从错误信息看,Go工具无法识别第二个目录为一个有效的包路径。以下是几种可能的解决方案:
1. 检查并初始化Go模块
在第二个项目目录中初始化Go模块:
cd E:\Clouds\OneDrive\CX\GoLang\test
go mod init test
然后重新构建:
go build
2. 检查GOPATH配置
确认你的GOPATH是否包含项目目录。检查当前GOPATH:
go env GOPATH
如果第二个目录不在GOPATH中,可以将其添加到GOPATH:
set GOPATH=%GOPATH%;E:\Clouds\OneDrive\CX\GoLang
或者在项目目录中设置局部环境变量:
set GOPATH=E:\Clouds\OneDrive\CX\GoLang
go build
3. 目录结构问题
确保目录结构符合Go的约定。正确的结构应该是:
E:\Clouds\OneDrive\CX\GoLang\
├── src/
│ └── test/
│ └── test.go
如果是这种结构,在test目录中执行:
go build test
4. 使用完整包路径构建
如果以上方法都不行,尝试使用完整文件路径:
go build E:\Clouds\OneDrive\CX\GoLang\test\test.go
5. 检查环境变量
验证所有Go相关的环境变量:
go env
特别关注GOPATH、GO111MODULE和GOROOT的值。
最可能的原因是第二个目录没有正确配置为Go工作空间的一部分,或者缺少go.mod文件。建议首先尝试第一种解决方案(初始化Go模块),这通常能解决此类问题。

