将Node.js从v10.16更新到v10.32之后,未检测到PM2,但是在通过ps aux检查时,PM2运行良好。即使系统重新启动,即使手动PM2命令导致以下错误类型,PM2仍能正常工作。
pm2列表pm2:找不到命令
将Node.js切换回10.16和PM2命令再次可用。fyi PM2最初安装在v10.16下。
在v10.32中尝试使用PM2安装命令npm install pm2 -g,但必须使用命令npm install pm2 -g --unsafe-perm才能运行。
Node.js v10.16现在运行PM2 v10.1。Node.js v10.32现在运行PM2 v10.8。
这是使PM2版本保持同步并与Node升级/更改一起使用的正确方法吗?安装每个新版本的Node之后是否需要执行此操作?
我试图制作一个节点本机插件并且node-gyp configure build工作正常,当我需要在 javascript 文件中测试插件并使用它正常运行node main它然后给出错误时Error: Module did not self register, code: ERR_DLOPEN_FAILED,这里是我到目前为止的代码:
绑定.gyp
{
"targets": [
{
"target_name": "hello",
"source": ["hello.cc"]
}
]
}
Run Code Online (Sandbox Code Playgroud)
你好.cc
#include <node/node.h>
#include <node/v8.h>
using namespace v8;
void Method(const FunctionCallbackInfo<Value>&args) {
Isolate* isolate = args.GetIsolate();
args.GetReturnValue().Set(String::NewFromUtf8(isolate, "world").ToLocalChecked());
}
void Initialize(Local<Object> exports) {
NODE_SET_METHOD(exports, "hello", Method);
}
NODE_MODULE(NODE_GYP_MODULE_NAME, Initialize);
Run Code Online (Sandbox Code Playgroud)
main.js
const hello = require("./build/Release/hello");
console.log(hello.hello())
Run Code Online (Sandbox Code Playgroud)
我该如何修复这个错误?谢谢。
服务器:Ubuntu服务器14.04
节点:v4.2.6 LTS
npm:1.3.10
我把我的同事的工作从git remote拉了下来.他将node_modules设为.gitignore.所以我必须npm安装模块.
但是在成功安装npm之后.当我尝试使用mocha启动项目时.它提醒我一个模块没有自我注册
错误来自Bcrypt的模块.
在绑定(/base_dir/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)
我不想将我的节点降级到0.10,因为我不能在该版本中使用JS promise.不知何故,JS承诺是我工作的必需品