Javascript 在nodemon旁边运行节点检查器?

Javascript 在nodemon旁边运行节点检查器?,javascript,node.js,node-inspector,nodemon,Javascript,Node.js,Node Inspector,Nodemon,我目前正在与一起使用node。然后我开始思考,有时将检查器与节点一起使用可能会很好,所以我已经开始使用 但是,是否可以同时运行这两个程序 通常要运行nodemon,我会使用: nodemon server.js //and similarly node-debug server.js 我也尝试过: nodemon --debug http.js 但遗憾的是,这也没有起作用 但两者都在一起 您可以使用nodemon--debug server.js启动服务器,然后需要在单独的终端窗口中运行节

我目前正在与一起使用node。然后我开始思考,有时将检查器与节点一起使用可能会很好,所以我已经开始使用

但是,是否可以同时运行这两个程序

通常要运行nodemon,我会使用:

nodemon server.js
//and similarly 
node-debug server.js
我也尝试过:

nodemon --debug http.js
但遗憾的是,这也没有起作用


但两者都在一起

您可以使用
nodemon--debug server.js启动服务器,然后需要在单独的终端窗口中运行节点检查器,除非您将nodemon推到后台

如果您想将它们作为一个命令运行,这对我很有用:
节点检查器&nodemon--debug app.js
(将app.js替换为脚本名称)。如果一切都搞砸了,您有时必须手动杀死node inspector,但通过这种方式运行命令,您可以选择运行
rs
,在需要时手动重新启动nodemon。HTH

我无法让nodemon与node inspector玩得很好。在一次更改之后,它将重新启动,但在那之后就不再有了。可能是因为我使用的是docker容器

重新加载应用程序的最简单方法是让node inspector来执行(我知道这不是让两者都运行的答案,但对我来说是有效的)

按以下方式启动应用程序:

node-inspector --save-live-edit & \
node --debug /app/server.js
由于我是在Linux上运行的,所以您不必每次都记住那个笨拙的命令

但是我在一条评论中注意到你正在运行Windows。以下是您的一些选项:

您可以将bash脚本转换为Windows批处理,并将其另存为
C:\Windows\System32\node-DEV.bat
。我做到了,它在我的Windows PC上运行:

@echo off
echo Starting DEV environment for %1
start node-inspector
nodemon --debug %1
然后您应该能够运行
节点DEV server.js

另一种选择;您可以运行类似于Node.js中编写的东西,因此与平台无关,尽管它看起来已经有一段时间没有更新了


或者,如果手头有Cygwin环境,您甚至可以在Cygwin环境中运行bash脚本。

针对运行bash shell的Windows用户的黑客修复程序:

首先,, (您可以通过
npm list-g
找到npm安装包的位置)

然后在bash中使用此命令,或将其添加到npm脚本中:

START /B node-inspector && nodemon --debug server.js

START/B
是在后台运行的windows命令。

必须使用以下命令安装节点检查器和节点管理器:

npm install -g nodemon
npm install -g node-inspector
要在Windows中运行,请创建一个新的.bat文件并添加以下行:

@echo off
echo Starting developer enviroment of the file %1
start nodemon --debug-brk %1
node-debug %1
并运行:

node_desarrolo.bat“要运行的文件名.js”

如果运行时出现错误:

Error: listen EADDRINUSE :::5858
    at Object.exports._errnoException (util.js:855:11)
    at exports._exceptionWithHostPort (util.js:878:20)
    at Agent.Server._listen2 (net.js:1237:14)
    at listen (net.js:1273:10)
    at Agent.Server.listen (net.js:1369:5)
    at Object.start (_debug_agent.js:21:9)
    at startup (node.js:72:9)
    at node.js:980:3

这是正常的,因为节点检查器需要打开该端口进行连接,但由于已打开
nodemon--debug brk%1
,5858端口无法打开并显示
EADDRINUSE:::5858
错误,请注意,nodemon的标志
--debug brk
,因此有必要在第一行设置断点。尝试在运行.bat后修改文件.js,并查看调试器上反映的更改。此调试器将重新启动并显示在file.js中所做的更改。快乐编码JS

适用于那些希望获得独立于操作系统的解决方案,并且没有针对windows的黑客攻击的人,等等

您可以使用npm run all,这是一个CLI工具,允许并行或顺序运行多个npm脚本。因此,您将package.json设置为:

"scripts": {
  "start": "npm-run-all --parallel lint start:debug start:server",
  "lint": "eslint . --ext .js",
  "start:debug": "node-debug server.js",
  "start:server": "nodemon server.js"
}
然后从CLI执行以下操作:npm start


警告:根据我的经验,同时运行nodemon和node debug有时会导致奇怪的节点检查器行为。因此,在调试时,我选择从脚本中删除nodemon,并依靠节点检查器保存实时编辑功能动态更改文件。

嗯,好主意,我就是无法让它工作。也许我对检查员还有更高的期望?然而,我做了下面的
nodemon--debug src/index.js
然后打开另一个cmd并执行
node debug index.js
我在windows上顺便问一下:)你在哪里运行节点检查器?我花了些时间回到这里:)但我不得不开始另一个项目,然后搬家。但我回来了,宝贝!不过有一件事是@paul。我可能误解了节点检查器的实际用途。我希望如果我
console.log
节点文件中的某些内容,它们会在
NI
中输出。我想情况并非如此?对于那些想要一个更可靠的解决方案和一个没有windows黑客的解决方案的人,请看下面我的答案。这实际上应该被标记为正确答案。因为这只是工作!!!无需使用Win7中的node inspector v0.10.2和nodemon v1.3.7两个不适用于我的窗口。它将只加载节点检查器-有什么想法吗?这是最好的方法,可以确保节点检查器在节点更新自身时获得代码更新。其他方法“有效”,但效率不高。希望这被标记为已接受的答案。@JörnBerkefeld&仅在Unix中表示“在后台运行”。Windows有不同的命令。看到这个:“nodeinspector&nodemon--debug filename.js”应该可以很好地工作。只需要一个命令行
{
    "scripts": {
        "dev": "npx nodemon --exec \"node  --inspect --debug-port=0.0.0.0  src/index.js\""
    }
}