为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Go 模块时如何导入本地包

使用 Go 模块时如何导入本地包

Go
慕容3067478 2023-06-19 15:33:22
我想创建一个大项目,所以我需要创建某种文件夹结构。我是 Go 的新手,但据我了解,这样做的方法是创建包,对吗?我正在使用 Go 模块,我已经尝试了很多不同的解决方案,在这里和谷歌上找到了,但它们似乎都不适合我。我现在只想将导出的函数从 example.go 文件导入 main.go文件夹结构如下:clientexample---example.gogo.modgo.summain.go我已经使用 go mod init 创建了模块文件,请参见下面的第一个代码片段第二个代码片段显示了 main.go 的标头的样子第三个片段是具有我要导入的功能的包   module exampleapp    go 1.12    require (        github.com/gin-gonic/contrib v0.0.0-20190408155029-b5986969cb50        github.com/gin-gonic/gin v1.4.0    )package mainimport (    "net/http"    "exampleapp/example")    package example    import (        "net/http"        "github.com/gin-gonic/gin"    )    func GetAllEmployees(c *gin.Context) {        c.JSON(http.StatusOK, gin.H{            "message": "pong",        })    }大多数情况下,当我尝试在 main.go 中添加包时,VSCode 会自动删除该行,并且在 main 函数中表示未定义 GetAllEmployees。我设法在删除包之前捕获了错误包,它说 -"imported and not used: "exampleapp/example"我在这里使用“exampleapp/example”模块名称 exampleapp 是不是错了?我在没有 exampleapp 和“./example/example”的情况下尝试过,但随后我收到一条错误消息,指出找不到路径模块。非常感谢您的帮助,因为我已经坚持了很长一段时间并且无法弄清楚,我在这里错过了什么。
查看完整描述

1 回答

?
梦里花落0921

TA贡献1772条经验 获得超5个赞

它应该是这样的(main.go):


package main

import (

    "exampleapp/example"

)


func main() {

    example.GetAllEmployees(...)

}


查看完整回答
反对 回复 2023-06-19
  • 1 回答
  • 0 关注
  • 126 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信