1

我正在尝试将serialport.js与我的nw.js 应用程序打包在一起。我很难为nw.js构建serialport.js

我已经使用 npm在我的“app\resource\node_modules”安装了 serialport.js 。

我还全局安装了nw.gyp npm install nw-gyp -g”

然后我将目录更改为binding.gyp所在的“app\resource\node_modules\serialport” ,并尝试使用 nw-gyp “nw-gyp rebuild --target=0.12.3” 重建串行端口

这是我得到的错误: binding.gyp 中的未定义变量 module_name

在此处输入图像描述

有什么想法可以解决这个问题吗?

其他的似乎也有类似的问题: Win 7 上 Node-webkit (nw.js) 中的 Serialport.js

我还看到不同的节点模块发生了同样的错误: Building node-sqlite3 with nw-gyp

4

2 回答 2

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

于 2015-11-12T14:20:42.933 回答
1

降级 npm 有效!试一下

npm 安装 npm@6 -g

于 2021-04-01T15:44:36.580 回答