我尝试使用 nw.js应用打包 serialport.js 。我很难为 nw.js 构建 serialport.js 。
我已在" app \ resource \ node_modules" 中使用npm安装 serialport.js 。
我还在全球安装 nw.gyp " npm install nw-gyp -g"
然后我将目录更改为" app \ resource \ node_modules \ serialport" ,其中 binding.gyp 位于此处,并尝试使用nw重建serialport -gyp " nw-gyp rebuild --target = 0.12.3"
这是我得到的错误: binding.gyp中未定义的变量module_name
任何想法我怎么能通过这个问题?
其他人似乎也有类似的问题: Serialport.js in Node-webkit (nw.js) on Win 7
我也看到了不同节点模块发生的同样错误: Building node-sqlite3 with nw-gyp
答案 0 :(得分:1)
打开 node_modules / serialport / binding.gyp ,您需要进行一些更改......
<强>之前:强>
"target_name": "action_after_build",
"type": "none",
"dependencies": [ "<(module_name)" ],
"copies": [
{
"files": [ "<(PRODUCT_DIR)/<(module_name).node" ],
"destination": "<(module_path)"
<强>后:强>
"target_name": "action_after_build",
"type": "none",
"dependencies": [ "serialport" ],
"copies": [
{
"files": [ "<(PRODUCT_DIR)/serialport.node" ],
"destination": "."
并在 node_modules / serialport / package.json 中更改 module_path :
"module_path": "./build/{configuration}/",
最后,运行 nw-gyp rebuild --target = 0.12.3
答案 1 :(得分:1)
降级 npm 有效!试一试
npm install npm@6 -g