golang import引用项目下其他文件内函数

初始化项目

go mod init [module名字]
go mod init project

项目结构

go mod 文件

代码

需要暴露给外界使用的变量/函数名必须大写

在main.go中引入,当前项目模块名/要引用的包名

go 复制代码
package main

import (
	// 这里的路径开头为项目go.mod中的module
	"project/initialize"
)

func main() {
	initialize.Routers()
}
// 在initialize的server.go中
package initialize

import (
	"fmt"

	"github.com/gin-gonic/gin"
)

func Routers() *gin.Engine {
	Router := gin.Default()
	fmt.Println("初始化路由")
	Router.GET("/ping", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "pong",
		})
	})
	Router.Run("127.0.0.1:8080")
	return Router
}
相关推荐
多弗朗皮卡丘几秒前
C++多继承
开发语言·c++·多继承
她的男孩21 分钟前
分片上传的大文件人人可下载:文件模块 isPrivate 在合并时被抹成 false,另有 4 个静默坑
java·后端·架构
lie..23 分钟前
30天从零开始学AI应用开发(Day 19):项目二完结:RAG 知识库问答系统,把自己攒的资料变成私人顾问
开发语言·人工智能·python
SWAGGY..27 分钟前
【C++进阶】:(7)红黑树的原理与 C++ 实现:结构设计、插入调整及性质验证
android·java·开发语言·c++·算法
颜进强28 分钟前
18 · NestJS动态模块与 forRoot:`imports: [ConfigModule.forRoot({...})]` 到底在 import 什么
前端·后端·ai编程
xn713333 分钟前
Personal AI Agent 架构实战:Memory、权限、跨 App 与本地/云端设计
人工智能·后端·agent
(Charon)35 分钟前
【C++面试】堆内存与栈内存:string、vector和对象到底存在哪里
开发语言·c++·面试
谢亮_vipxieliang44 分钟前
Go defer、panic与recover核心知识点
开发语言·后端·golang
颜进强1 小时前
17 · 自定义 Provider 四形态:useValue / useClass / useFactory / useExisting 到底在选什么
前端·后端·ai编程
迪康Defender1 小时前
终端安全事后追溯能力解析:本地审计模块设计思路与落地实践
运维·开发语言·人工智能·安全·php·安全威胁分析·运维开发