更改文件后重新启动节点

时间:2012-06-24 07:18:36

标签: node.js

对于那些来自PHP背景的人来说,杀死节点并在每次代码更改后再次启动它的过程似乎非常繁琐。启动脚本时是否有任何标志,节点在保存代码更改时自动重启节点?

8 个答案:

答案 0 :(得分:153)

一个不错的选择是Node-supervisorNode.js Restart on File Change是关于如何使用它的好文章,通常是:

 npm install supervisor -g

并在迁移到应用程序的根目录后使用以下

 supervisor app.js

答案 1 :(得分:87)

你的朋友想看一下名为nodemon(https://github.com/remy/nodemon

的东西

Nodemon将监视nodemon启动的目录中的文件,如果它们发生更改,它将自动重启节点应用程序。

示例:

nodemon ./server.js localhost 8080

或只是

nodemon server

答案 2 :(得分:76)

forever module具有多个node.js服务器的概念,可以启动,重新启动,停止和列出当前运行的服务器。它还可以根据需要监视更改文件和重新启动节点。

如果您还没有安装它,请安装它:

npm install forever -g

安装后,调用forever命令:使用-w标志来查看文件以进行更改:

forever -w ./my-script.js

此外,您还可以查看目录并忽略模式:

forever --watch --watchDirectory ./path/to/dir --watchIgnore *.log ./start/file

答案 3 :(得分:20)

各种NPM可以让生活更轻松。

促进发展

node-devnpm install -g node-dev
nodemonnpm install -g nodemon
supervisornpm install -g supervisor
forevernpm install -g forever

For Production (具有群集,远程部署等扩展功能)

pm2npm install -g pm2
Strong Loop Process Managernpm install -g strongloop

Forever,pm2和StrongLoop之间的比较可以在StrongLoop的网站上找到。

答案 4 :(得分:12)

您还可以尝试nodemon

安装Nodemon

npm install -g nodemon

使用Nodemon

通常我们启动节点程序,如:

node server.js

但是你必须这样做:

nodemon server.js

答案 5 :(得分:8)

  

节点-dev的

对于喜欢在服务器重新启动时出现咆哮(或libnotify)通知或有错误<的人来说,

node-dev是nodemon和supervisor的绝佳替代品文件中出现/ strong>或更改

<强>安装:

npm install -g node-dev

使用node-dev而不是node:

node-dev app.js

关于更改文件的通知,以便服务器自动启动

enter image description here

控制台输出

enter image description here

答案 6 :(得分:4)

我使用runjs之类的:

runjs example.js

该包仅被称为run

npm install -g run

答案 7 :(得分:0)

执行以下步骤:

  1. npm install --save-dev nodemon

  2. 将以下两行添加到package.json的“脚本”部分:

    “开始”:“节点./bin/www”,

    “ devstart”:“ nodemon ./bin/www”

    如下所示:

    “脚本”:{

    "test": "echo \"Error: no test specified\" && exit 1",
    
    "start": "node ./bin/www",
    
    "devstart": "nodemon ./bin/www"
    

    }

  3. npm运行devstart。

https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/skeleton_website