无需godotenv.Load(),如何从.env文件读取环境变量?
无需调用godotenv.Load()加载.env环境变量的解决方法
针对你的情况,虽然launch.json里已经配置了envFile,但仍无法读取变量,可按以下步骤排查解决:
修正launch.json的语法错误
你提供的配置中,"envFile": "${workspaceFolder}/.env",末尾的逗号是多余的,JSON不允许数组/对象最后一个元素带尾随逗号,删掉后配置才能正常生效:"version": "0.2.0", "configurations": [ { "name": "Launch file", "type": "go", "request": "launch", "mode": "auto", "program": "${file}", "envFile": "${workspaceFolder}/.env" } ]确认.env文件的位置和格式
- 确保
.env文件确实在VS Code的工作区根目录(${workspaceFolder}指向的路径),如果文件在子目录,要修改路径比如${workspaceFolder}/config/.env .env文件必须遵循KEY=VALUE的格式,示例:
注意不要给值加多余的引号(除非值本身包含空格或特殊字符,此时需要用双引号包裹)。API_KEY=abc123xyz WEBHOOK_URL=https://example.com/webhook # 注释行以#开头
- 确保
确保通过VS Code调试启动程序
只有通过VS Code的「启动调试」(快捷键F5)运行程序时,launch.json里的envFile配置才会生效。如果直接在终端执行go run main.go,VS Code不会自动加载.env文件的变量。重启VS Code或重新加载窗口
修改launch.json后,有时候需要重启VS Code或按Ctrl+Shift+P选择「重新加载窗口」,让新的配置生效。检查Go插件版本
确保VS Code的Go插件是最新版本,旧版本可能对envFile配置的支持存在问题,在扩展市场搜索「Go」并更新。
内容的提问来源于stack exchange,提问作者Yelper
相关产品推荐
相关产品推荐

