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
}
相关推荐
LawrenceLan9 小时前
Flutter 零基础入门(十一):空安全(Null Safety)基础
开发语言·flutter·dart
yangminlei9 小时前
Spring Boot3集成LiteFlow!轻松实现业务流程编排
java·spring boot·后端
计算机毕设VX:Fegn089510 小时前
计算机毕业设计|基于springboot + vue医院设备管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
txinyu的博客10 小时前
解析业务层的key冲突问题
开发语言·c++·分布式
J_liaty10 小时前
Spring Boot整合Nacos:从入门到精通
java·spring boot·后端·nacos
码不停蹄Zzz10 小时前
C语言第1章
c语言·开发语言
面汤放盐10 小时前
后端系统设计文档模板
后端
行者9610 小时前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
阿蒙Amon10 小时前
C#每日面试题-Array和ArrayList的区别
java·开发语言·c#
SmartRadio11 小时前
ESP32添加修改蓝牙名称和获取蓝牙连接状态的AT命令-完整UART BLE服务功能后的完整`main.c`代码
c语言·开发语言·c++·esp32·ble