我正在将我的Node.js项目打包成一个可执行文件。为此,我使用了"pkg“工具(https://www.npmjs.com/package/pkg#detecting-assets-in-source-code)
pkg -t node6-linux-x64 . -d“package.json”(使用更好的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"]
}但是我的应用程序使用了local (),所以它会创建更多这样的警告。由于我的应用程序很复杂,所以很难更改所有本地需求。
另外,访问“脚本”(package.json)中的父目录是否正确?
"pkg":{
"scripts": ["../shared/config/**/*.js", "../shared/lib/**/*.js"]
}提前感谢
发布于 2022-08-27 03:04:54
在这里,您只希望在脚本运行之前设置这两个env变量,这样做很简单:
NODE_ENV=development NODE_PATH=../shared/config:../shared/lib:./config:./lib:./relay pkg -t node6-linux-x64 . -dhttps://stackoverflow.com/questions/46160501
复制相似问题