登录
首页 >  Golang >  Go问答

从根目录引入Golang包

来源:stackoverflow

时间:2024-02-24 23:33:25 203浏览 收藏

积累知识,胜过积蓄金银!毕竟在Golang开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《从根目录引入Golang包》,就带大家讲解一下知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

我正在尝试在 go 中创建一个干净的架构 api,但我对包逻辑感到困惑。这是该项目的结构。

main.go                <- package main
    ├── delivery/
    │   ├── endpoints/
    │   │   ├── users.go   <- package endpoints (I want to import ./repository here)
    │   │   └── home.go    <- package endpoints
    │   ├── router.go      <- package delivery
    │   ├── middleware.go  <- package delivery
    ├── repository/
    │   ├── database.go    <- package repository
    │   └── fetchUsers.go  <- package repository

router.go 文件中,我可以访问和导入像 import "./endpoints" 这样的端点,但是当我尝试在 users.gohome.go 内导入存储库包时,出现错误。有没有办法从端点文件夹中的文件访问存储库?


解决方案


唯一推荐/规范的导入方式是使用完整路径。如果您的代码位于 github.com/uranus/myproject 中,那么在 endpoints/users.go 中您应该导入 repository

import "github.com/Uranus/myproject/repository"

请注意,它实际上不必位于 github 上。使用模块,您可以在本地开发时使用任何您喜欢的导入路径,只要它是 go.mod 文件中的模块名称即可。

按照 this official Go blog post 中的示例操作,您就会知道该怎么做。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>