Node.js node_modules \ grpc \ src \ node \ extension_binary \ node-v83-win32-x64-unknown \ grpc_node.node

Я делал доказательство концепции gRPC, используя node.js

Вот мой package.json

{
  "name": "grpc-node-demo",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "dependencies": {
    "@grpc/proto-loader": "^0.1.0",
    "grpc": "^1.11.0",
    "lodash": "^4.6.1"
  }
}

После записи в прото-файл, клиентские и серверные файлы. Когда я запускаю команду node server.js, я получил следующую ошибку

PS C:\Learnings\node\grpc-nodejs-demo> node server.js
C:\Learnings\node\grpc-nodejs-demo\node_modules\grpc\src\grpc_extension.js:58
    throw e;
    ^

Error: Failed to load C:\Learnings\node\grpc-nodejs-demo\node_modules\grpc\src\node\extension_binary\node-v83-win32-x64-unknown\grpc_node.node. \\?\C:\Learnings\node\grpc-nodejs-demo\node_modules\grpc\src\node\extension_binary\node-v83-win32-x64-unknown\grpc_node.node is not a valid Win32 application.
\\?\C:\Learnings\node\grpc-nodejs-demo\node_modules\grpc\src\node\extension_binary\node-v83-win32-x64-unknown\grpc_node.node
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1122:18)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (C:\Learnings\node\grpc-nodejs-demo\node_modules\grpc\src\grpc_extension.js:32:13)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
PS C:\Learnings\node\grpc-nodejs-demo>

Есть предположения??


person Madhu Tomy    schedule 23.11.2020    source источник


Ответы (1)


После некоторого исследования я сделал следующие шаги, чтобы решить проблему.

  • Мне не хватало node-gyp - собственного инструмента для сборки надстроек Node.js. Его можно установить

    npm install -g node-gyp

  • Установить Python

  • Установить среду сборки Visual C ++

  • Очистить нод-модули

  • Потом делаем в папке npm install

По следующей ссылке подробно описаны вышеперечисленные шаги: https://github.com/nodejs/node-gyp#on-windows

person Madhu Tomy    schedule 23.11.2020