当前位置:  开发笔记 > 编程语言 > 正文

可以将Visual Studio代码配置为使用nodemon启动

如何解决《可以将VisualStudio代码配置为使用nodemon启动》经验,为你挑选了3个好方法。

我已经nodemon在我的系统中安装了一个全局包.它nodemon在cmd中执行时有效.

但是当我在这个launch.json文件中使用vscode时,vscode会抛出此异常:

请求启动:运行时可执行文件XXX\XXX\XXX\XXX \nodemon不存在

launch.json是:

{
"version": "0.2.0",
"configurations": [
    {
        "name": "Launch",
        "type": "node",
        "request": "launch",
        "program": "app.js",
        "stopOnEntry": false,
        "args": [],
        "cwd": ".",
        "runtimeExecutable": nodemon,
        "runtimeArgs": [
            "--nolazy"
        ],
        "env": {
            "NODE_ENV": "development"
        },
        "externalConsole": false,
        "preLaunchTask": "",
        "sourceMaps": false,
        "outDir": null
    },
    {
        "name": "Attach",
        "type": "node",
        "request": "attach",
        "port": 5858
    }
]
}

当我擦除nodemin时,runtimeExecutable它与节点完美地运行



1> Adrian T..:

首先,将nodemon安装为dev依赖项:

npm install --save-dev nodemon

对于较新版本的VS Code,请按.vscode/launch.json如下方式设置文件:

{
    "version": "0.2.0",
    "configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "nodemon",
        "runtimeExecutable": "${workspaceFolder}/node_modules/nodemon/bin/nodemon.js",
        "program": "${workspaceFolder}/app.js",
        "restart": true,
        "console": "integratedTerminal",
        "internalConsoleOptions": "neverOpen"
    }]
}

最重要的部分是runtimeExecutable指向nodemon脚本的program属性和指向入口点脚本的属性.

如果您使用较旧的VS代码(您不应该使用),请尝试以下启动配置:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Launch with nodemon",
      "type": "node",
      "request": "launch",
      "program": "${workspaceRoot}/node_modules/nodemon/bin/nodemon.js",
      "args": ["${workspaceRoot}/app.js"],
      "runtimeArgs": ["--nolazy"]
    }
  ]
}

最重要的部分是program指向nodemon脚本的args属性和指向正常入口点脚本的属性.



2> Mathew..:

我无法得到@AdrianT的答案,附带调试器.看起来有一种更新的内置支持方式来执行此操作:

    打开Launch Configuration下拉列表并选择"Add configuration ..."

    选择"Node.js:Nodemon Setup"

它会在你的launch.json中添加这样的东西:

{
        "type": "node",
        "request": "launch",
        "name": "nodemon",
        "runtimeExecutable": "nodemon",
        "program": "${workspaceRoot}/app.js",
        "restart": true,
        "console": "integratedTerminal",
        "internalConsoleOptions": "neverOpen"
}

确保您的"程序"设置是正确的入口点脚本.

您需要全局安装nodemon才能使其正常工作(npm install -g nodemon)(根据文档)

您的应用程序现在运行,您可以设置将被命中的断点,控制台将记录到集成终端窗口.

请注意,终止调试会话只会终止要调试的程序,而不是nodemon本身.要终止nodemon,请在集成终端中按Control-C.


这应该是公认的答案,因为这是现在正确的方法.
如果你不喜欢运行全局`nodemon`,你也可以使用`npm`安装`nodemon`然后设置``runtimeExecutable":"$ {workspaceFolder} /node_modules/.bin/nodemon",`

3> Yevgeni..:

在Visual Studio代码中创建启动配置:

{
    "name": "Attach",
    "type": "node",
    "request": "attach",
    "port": 5858,
    "restart": true
}

从命令行运行nodemon: nodemon --debug server.js

现在从VC和vuala'附加'.


所以我将`--debug`标志传递给了nodemon,我看到远程调试器在`Debugger侦听127.0.0.1:5858`但奇怪的是VSCode连接到某个东西,但似乎没有命中断点
推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有