首页 > 解决方案 > 为什么我自己的包不在GOROOT

问题描述

我是 GO 的初学者,并尝试运行我的第一个项目。而且我有导入自己的包的问题。我在 go/src 下创建 go 项目。文件结构如下:

- projectName
     - function
       - utils
          helper.go( package utils)
   main.go(package main)

我想在 main 中导入 utils

import (
    "projectName/function/utils"
)

给我无法导入 projectName/function/utils 的错误(在 /usr/local/go/src/projectName/function/utils(来自 $GOROOT)/Users/myUser 中的任何一个中找不到包“projectName/function/utils” /go/src/projectName/function/utils(来自 $GOPATH)

我在 /Users/myUser/go/src/ 文件夹下创建了项目。更多信息: go.mod 在 /Users/myUser/go/src/projectName 下创建,内容为:

module projectName


go 1.16

如果我运行“go mod tidy”,它会抛出错误:

projectName imports
        projectName/function/utils: package projectName/function/utils is not in GOROOT (/usr/local/go/src/projectName/function/utils)

标签: gopackage

解决方案


谢谢你的意见。我通过提供我的解决方案来结束这个问题。如果你和我一样是初学者。创建新项目后,请运行 go mod init projectName ,否则无法导入包。请不要跳过这一步。


推荐阅读