运行工头从视觉工作室代码launch.json开始

问题描述 投票:4回答:1

目前,我通过在命令行中键入foreman start来运行我的解决方案,这是正常的。我正在尝试使用visual studio代码调试我的代码。为此,我创建了一个launch.json文件:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "node",
            "request": "launch",
            "program": "${workspaceRoot}/package.json",

            "stopOnEntry": false,
            "args": [],
            "cwd": "${workspaceRoot}",
            "preLaunchTask": "start",
            "runtimeExecutable": null,
            "runtimeArgs": [
                "--nolazy"
            ],
            "env": {
                "NODE_ENV": "development"
            },
            "externalConsole": false,
            "sourceMaps": false,
            "outDir": null
        },
        {
            "name": "Attach",
            "type": "node",
            "request": "attach",
            "port": 5858,
            "address": "localhost",
            "restart": false,
            "sourceMaps": false,
            "outDir": null,
            "localRoot": "${workspaceRoot}",
            "remoteRoot": null
        }
    ]
}

我创建了一个tasks.json文件,试图从那一点开始程序:

{
    "version": "0.1.0",
    "command": "start",
    "isShellCommand": true,
    "args": [
        "--no-color"
    ],
    "tasks": [
        {
            "taskName": "test",
            "args": [],
            "isTestCommand": true
        },
        {
            "suppressTaskName": true,
            "taskName": "start",
            "args": [
                "foreman",
                "start"
            ],
            "isBuildCommand": true
        }
    ]
}

当我正常运行foreman start时,我看到了这个输出:

$ foreman start
12:00:59 web.1          | started with pid 22641
12:00:59 workers.1      | started with pid 22642
12:00:59 intermediary.1 | started with pid 22643
12:01:00 web.1          | [INFO] Node app is running at localhost: 3777

如果我在当前状态下调试,控制台的输出是:

Failed to launch external program start --no-color.
spawn start ENOENT

如果我改变我的程序指向gulp:

"program": "${workspaceRoot}/node_modules/.bin/gulp",

它给了我一些更有希望的东西,但因为它不是工头,它不会运行我需要的一切。

node --debug-brk=16751 --nolazy node_modules/.bin/gulp 
Debugger listening on port 16751
[16:23:17] Using gulpfile ~/Git/backend/gulpfile.js
[16:23:17] Starting 'watch'...
[16:23:18] Finished 'watch' after 125 ms
[16:23:18] Starting 'default'...
[16:23:18] Finished 'default' after 13 μs

有谁知道如何从visual studio代码调试foreman start

node.js visual-studio-code foreman
1个回答
1
投票

这将运行foreman start作为shell命令。按F1键,输入Run Task,输入并选择development任务。

tasks.json

{
    "version": "0.1.0",
    "command": "foreman",
    "isShellCommand": true,
    "tasks": [
        {
            "suppressTaskName": true,
            "taskName": "development",
            "args": [
                "start"
            ],
            "isWatching": true
        }
    ]
}

如果你想调试一个web应用程序,你应该看看vscode-chrome-debug,如果它是一个节点应用程序,你必须将你的应用程序的入口点设置为launch.json中的程序"program": "${workspaceRoot}/app.js"

© www.soinside.com 2019 - 2024. All rights reserved.