Golang中路径首元素缺少点号的问题

Golang中路径首元素缺少点号的问题 大家好,

我尝试创建一个小型应用程序,但遇到了一些错误。

下面是我遇到的错误:

/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:17:2: malformed module path “bufio”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:18:2: malformed module path “errors”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:19:2: malformed module path “fmt”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:20:2: malformed module path “io”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:21:2: malformed module path “os”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:22:2: malformed module path “os/exec”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:23:2: malformed module path “regexp”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:24:2: malformed module path “sort”: missing dot in first path element
/home/gslab/go/pkg/mod/github.com/joho/godotenv@v1.3.0/godotenv.go:25:2: malformed module path “strings”: missing dot in first path element

非常感谢任何帮助。

谢谢


更多关于Golang中路径首元素缺少点号的问题的实战教程也可以访问 https://www.itying.com/category-94-b0.html

10 回复

谢谢。我真的很感激

更多关于Golang中路径首元素缺少点号的问题的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


你之前运行过 go get 吗?

另外,你是在一个遗留项目中还是在 Go 模块中?

export 是一个 *sh 相关的东西。

在 Windows 的 cmd.exe 终端中,你必须使用 set,并且那里是 %HOME%

不确定在使用 PowerShell 时需要做什么更改。

非常感谢。但它仍然报错。

image

我只想使用Couchbase的AST。我可以独立使用Parser函数吗?我正在尝试使用以下链接中的AST生成器:https://github.com/couchbase/query 你能指导我完成这个过程吗?

你好 @NobbZ

感谢你的快速回复。

详情如下:

Go 版本:go1.13.5 操作系统:Ubuntu 18.04

我是按照 Go 官方文档安装的。下载了 tar 文件,并按照说明安装了 Go。

我仍然在使用这些命令时遇到错误: C:\Go\go-work> export GOPATH=$HOME/query ‘export’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

C:\Go\go-work>export GOPATH=$HOME/query ‘export’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

我遇到以下错误。

C:/n1q l>go build n1ql.go github.com/andelf/go-curl …\andelf\go-curl\easy.go:408:22: 标识符 “_Ctype_struct_curl_slist” 可能与 cgo 生成的标识符冲突

我目前在使用 Go 模块,并且正在尝试处理 github.com/couchbase/query 中的解析器模块。

我也在尝试从 GitHub 导入一些包,它允许我获取一些包,但在同一个仓库中的某些包上却出现以下错误:

C:\Go\src>go get github.com/couchbase/query/datastore
go: finding github.com/couchbase/query latest
bytes\buffer.go:10:2: malformed module path “errors”: missing dot in first path element
internal\fmtsort\sort.go:13:2: malformed module path “sort”: missing dot in first path element

我已经成功获取了 github.com/couchbase/query 路径,但在后续文件中出现错误。

恳请帮助。

这个错误通常发生在Go模块路径的声明格式不正确时。错误信息中提到的godotenv.go文件第17-25行应该是模块的导入声明,但看起来这些标准库包的导入路径缺少了必要的点号前缀。

让我检查一下godotenv.go文件中这些导入语句的实际格式。根据错误信息,问题出现在标准库包的导入上。在Go模块中,标准库包的导入不需要点号,但如果是本地包或自定义包,则需要正确的路径格式。

以下是可能出现问题的示例代码:

// 错误的导入方式(如果这些是自定义包)
import (
    "bufio"      // 如果是自定义包,应该类似 "github.com/user/bufio"
    "errors"     // 如果是自定义包,应该类似 "example.com/errors"
    "fmt"
    "io"
    "os"
    "os/exec"
    "regexp"
    "sort"
    "strings"
)

// 正确的标准库导入方式
import (
    "bufio"
    "errors"
    "fmt"
    "io"
    "os"
    "os/exec"
    "regexp"
    "sort"
    "strings"
)

问题可能出现在你的go.mod文件配置上。检查你的go.mod文件:

// 正确的go.mod文件示例
module github.com/yourusername/yourapp

go 1.19

require (
    github.com/joho/godotenv v1.3.0
)

解决方案:

  1. 清理模块缓存
go clean -modcache
  1. 重新下载依赖
go mod download
  1. 如果问题仍然存在,检查go.mod文件中的模块声明: 确保你的模块路径包含点号,例如:
module github.com/yourusername/yourapp
// 而不是
module yourapp  // 缺少点号
  1. 重新初始化模块(如果必要):
rm go.mod go.sum
go mod init github.com/yourusername/yourapp
go mod tidy
  1. 检查godotenv包的完整性
rm -rf ~/go/pkg/mod/github.com/joho/godotenv@v1.3.0
go get github.com/joho/godotenv@v1.3.0

这个错误通常是由于Go模块系统期望导入路径遵循特定的格式规范,标准库包应该直接使用短名称,而第三方包需要完整的导入路径。

回到顶部