如何将环境变量传递给pkg(节点js)?

时间:2017-09-11 16:39:22

标签: node.js

我正在将我的Node.js项目打包成可执行文件。为此,我使用" pkg"工具(https://www.npmjs.com/package/pkg#detecting-assets-in-source-code

pkg -t node6-linux-x64 . -d

" package.json"(使用better-npm-run):

"env": {
  "NODE_ENV": "development",
  "NODE_PATH": "../shared/config:../shared/lib:./config:./lib:./relay",
  ..
}

我也尝试过设置OS环境变量,但pkg也不接受它。

export NODE_PATH=/path/from/root/shared/config:/path/from/root/shared/lib:/path/from/root/config:/path/from/root/lib:/path/from/root/relay
OR
export PATH=${PATH}:/path/from/root/shared/config:/path/from/root/shared/lib:/path/from/root/config:/path/from/root/lib:/path/from/root/relay

我也试过以下解决方案,它确实有助于解决一些警告,

"pkg":{
  "scripts": ["config/**/*.js", "lib/**/*.js", "relay/server/**/*.js", "../shared/config/**/*.js", "../shared/lib/**/*.js"]
}

但我的应用程序使用本地requires(),因此它会创建更多此类警告。由于我的申请很复杂,很难改变所有当地要求。

也是访问"脚本中的父目录的正确方法" (的package.json)?

"pkg":{
  "scripts": ["../shared/config/**/*.js", "../shared/lib/**/*.js"]
}

提前致谢

0 个答案:

没有答案