VS Code AWS SAM本地Lambda调试配置

时间:2020-06-25 09:51:14

标签: visual-studio-code aws-lambda vscode-debugger aws-sam

我正在尝试实现一种配置launch.json的方式,使我只需单击一下即可在调试模式下本地运行lambda。现在,我可以通过运行sam local invoke -d 9999 Lambda1然后运行clicking run in vs code并使用以下launch.json配置开始调试

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Lambda1",
            "type": "node",
            "request": "attach",
            "address": "localhost",
            "port": 9999,
            "localRoot": "${workspaceRoot}/lambda1",
            "remoteRoot": "/var/task",
            "protocol": "inspector",
            "stopOnEntry": false
        }
    ]
}

是否可以通过自行运行所需的shell命令然后启动VS Code调试会话的方式来配置launch.json?

我尝试为上述配置配置 preLaunchTask ,但是shell命令开始执行,而VS Code调试器未启动。 我假设,vs代码调试器在启动之前等待 preLaunchTask 完成,但是命令没有完成,只是开始侦听要附加的调试会话,从而导致死锁。

单独运行sam local invoke -d 9999 Lambda1或作为 preLaunchTask 运行都会导致debugger listening on the specified port

我配置的任务:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "testTask",
            "type": "shell",
            "command": "sam local invoke -d 9999 Lambda1"
        }
    ]
}

总而言之,我想以调试模式启动lambda并只需单击一下即可将VS Code调试器附加到它。感谢您的帮助,谢谢!

0 个答案:

没有答案