节点找不到已安装的包
Node cannot find installed package
我有一个简单的 nodejs
client
,它使用 grpc
和 protobuf
与 cpp
grpc
服务器通信。
我的 package.json
包含 required
个软件包:
"dependencies": {
"google-protobuf": "^3.9.1",
"grpc-web": "^1.0.6",
"webpack": "^4.39.2",
"webpack-cli": "^3.3.7"
}
I 运行 npm install
并且所有模块都安装在本地 node_modules
.
我的客户端在与 node_modules
相同的路径中,但是当我启动它时,我收到一条错误消息,说它找不到 protobuf 模块。
来自 client.js:
var messages = require('../../messages/proto/output/work_pb.js');
var services = require('../../messages/proto/output/work_grpc_web_pb.js');
var grpc = require('grpc');
运行 客户:
node client.js
Error: Cannot find module 'google-protobuf'
Require stack:
- /home/work/messages/proto/output/work_pb.js
- /home/work/frontend/web/client.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:713:15)
at Function.Module._load (internal/modules/cjs/loader.js:618:27)
at Module.require (internal/modules/cjs/loader.js:771:19)
at require (internal/modules/cjs/helpers.js:68:18)
at Object.<anonymous> (/home/radu/work/admass/messages/proto/output/work_pb.js:11:12)
at Module._compile (internal/modules/cjs/loader.js:868:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:879:10)
at Module.load (internal/modules/cjs/loader.js:731:32)
at Function.Module._load (internal/modules/cjs/loader.js:644:12)
at Module.require (internal/modules/cjs/loader.js:771:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/home/work/messages/proto/output/work_pb.js',
'/home/work/frontend/web/client.js
删除整个 node_modules 文件夹并重新安装即可:
rm -rf node_modules
npm install
我最终在 '../../messages/
中添加了节点模块,并将其从引用原型文件的 pace 中删除,以避免冲突。
我有一个简单的 nodejs
client
,它使用 grpc
和 protobuf
与 cpp
grpc
服务器通信。
我的 package.json
包含 required
个软件包:
"dependencies": {
"google-protobuf": "^3.9.1",
"grpc-web": "^1.0.6",
"webpack": "^4.39.2",
"webpack-cli": "^3.3.7"
}
I 运行 npm install
并且所有模块都安装在本地 node_modules
.
我的客户端在与 node_modules
相同的路径中,但是当我启动它时,我收到一条错误消息,说它找不到 protobuf 模块。
来自 client.js:
var messages = require('../../messages/proto/output/work_pb.js');
var services = require('../../messages/proto/output/work_grpc_web_pb.js');
var grpc = require('grpc');
运行 客户:
node client.js
Error: Cannot find module 'google-protobuf'
Require stack:
- /home/work/messages/proto/output/work_pb.js
- /home/work/frontend/web/client.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:713:15)
at Function.Module._load (internal/modules/cjs/loader.js:618:27)
at Module.require (internal/modules/cjs/loader.js:771:19)
at require (internal/modules/cjs/helpers.js:68:18)
at Object.<anonymous> (/home/radu/work/admass/messages/proto/output/work_pb.js:11:12)
at Module._compile (internal/modules/cjs/loader.js:868:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:879:10)
at Module.load (internal/modules/cjs/loader.js:731:32)
at Function.Module._load (internal/modules/cjs/loader.js:644:12)
at Module.require (internal/modules/cjs/loader.js:771:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/home/work/messages/proto/output/work_pb.js',
'/home/work/frontend/web/client.js
删除整个 node_modules 文件夹并重新安装即可:
rm -rf node_modules
npm install
我最终在 '../../messages/
中添加了节点模块,并将其从引用原型文件的 pace 中删除,以避免冲突。