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
}
相关推荐
可乐鸡翅yeah_44 分钟前
hls.js 缓冲区参数 maxBufferLength、maxBufferSize 通俗讲解与业务调参
开发语言·javascript·ios·音视频·safari·m3u8
梦帮科技44 分钟前
【3.0修订版】 RNS 代币架构:ERC20 五件套扩展与六钱包分配
数据结构·后端·算法·架构·node.js·区块链·php
Wang's Blog1 小时前
Java框架 SpringCloud 快速入门: 全局过滤器(GlobalFilter)自定义鉴权
java·开发语言·spring cloud
白山编程大哥1 小时前
C语言篇:可变参数函数
c语言·开发语言
(Charon)1 小时前
【C++面试】程序崩溃如何定位:从Segmentation fault到GDB、Core Dump与ASan
开发语言·c++
IT_陈寒1 小时前
SpringBoot自动配置的坑:你以为的捷径可能是弯路
前端·人工智能·后端
“AI国潮设计-小江”1 小时前
《Python+SDXL实战:用ControlNet精准控制“英歌舞戚风蛋糕”质感,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
1024奇点1 小时前
【仓颉语言入门 · 第26课】
开发语言·ide·开源
jayhgq1 小时前
新一代Python包与项目管理工具——UV
开发语言·python·uv
xixiaoyunya1 小时前
CPU 100% 本身不是问题,它是一个症状
开发语言·php