电子应用程序有以下package.json:
package.json
"scripts": {
"start": "electron .",
"pack": "electron-builder --dir",
"dist": "electron-builder"
}
我可以通过使用
npm start
运行电子应用程序来读取环境变量。
process.env.JAVA_HOME
结果存在。
但是,如果我使用
npm run dist
命令创建电子应用程序的发行版,然后运行发行版应用程序,我将无法读取环境变量。
结果是
undefined
如何读取电子应用程序分发中的环境变量?
我正在 macOS Monterey 上工作
function fixPath() {
if (process.platform === 'win32') {
return
}
process.env.PATH = [
'./node_modules/.bin',
'/.nodebrew/current/bin',
'/usr/local/bin',
process.env.PATH
].join(':')
}
// Set env paths
fixPath()
在 main.js 或 main.ts 的开头添加上述代码,以便在应用程序打开时将这些路径添加到 process.env