golang中go build 后读取配置文件

golang打包后读取配置文件

在用go写代码的时候,为了好用经常使用go build 打包,如果我们用到了配置文件,就总是导致不能找到文件所在位置了出现bug,所以以下代码就解决了这个问题。

核心代码:

go 复制代码
	file, err := exec.LookPath(os.Args[0])
	if err != nil {
		fmt.Println("无法获取可执行文件路径:", err)
	}
	path, err := filepath.Abs(file)
	if err != nil {
		fmt.Println("无法获取文件绝对路径:", err)
	}
	index := strings.LastIndex(path, string(os.PathSeparator))
	if index == -1 {
		fmt.Println("路径分隔符未找到")
	}
	path = path[:index]
	configFileName = filepath.Join(path, "config-pro.yaml")

案例:

Successful!

相关推荐
七牛开发者1 分钟前
解读 Cordis:dsh 一切皆插件背后的运行时设计
前端·javascript·后端
_遥远的救世主_14 分钟前
异步架构与消息治理:幂等性与可恢复性
后端
雨辰AI16 分钟前
openGauss 生产运维避坑指南|适配信创项目改造核心难点
java·运维·后端
_遥远的救世主_21 分钟前
SaaS 工程系统超越多租户的结构性思考
后端
长大198828 分钟前
一键生成 K8s 配置:.NET Aspire 让云原生开发变得如此简单
后端
大勇前进31 分钟前
什么是 MCP(模型上下文协议)?.NET 开发者如何抢占 AI 工具链新风口
后端
归去来?31 分钟前
Python 常用优雅写法
开发语言·python
名字还没想好☜33 分钟前
Java 21 switch 模式匹配实战:sealed 接口 + record 替代 if-instanceof 链
java·人工智能·后端·python·spring
devilnumber42 分钟前
Java 30 组高频技术 / 知识点多角度对比
java·开发语言
何以解忧,唯有..1 小时前
Python 异常处理完全指南:从基础到高级实践
开发语言·前端·python