我正在尝试设置 VSCode 来调试 npm 脚本。
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch via NPM",
"runtimeExecutable": "npm",
"runtimeArgs": ["run-script", "test"],
"port": 9229
}
]
}
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
无法连接到运行时进程,10000 毫秒后超时 -(原因:无法连接到目标:connect ECONNREFUSED 127.0.0.1:9229)。
我是 Python Flask 开发和 VS Code 的新手。我一直在尝试通过参考以下教程来创建应用程序。
https://code.visualstudio.com/docs/python/tutorial-flask
https://github.com/Microsoft/python-sample-vscode-flask-tutorial \
https://code.visualstudio.com/docs/python/debugging
回购参考:https : //github.com/iamshivprasad/analytics
克隆的文件夹结构是:
- Development
- .vscode
- launch.json
- analyticspyengine
- analytics_modules
- controllers
- datainterfaces
- utils
- __init__.py
- analyticsservices.py
- webapp.py
.
.
.
Run Code Online (Sandbox Code Playgroud)
我能够使用launch.json中的以下设置成功启动程序。
{
"name": "Python: Flask",
"type": "python",
"request": "launch",
"module": "flask",
"env": {
"FLASK_APP": "analyticspyengine.webapp",
"FLASK_DEBUG": true,
"FLASK_ENV": "development"
},
"args": [
"run"
],
"jinja": true
}
Run Code Online (Sandbox Code Playgroud)
webapp.py 的内容
#!/usr/bin/python3
import sys
from . import app
from . import …Run Code Online (Sandbox Code Playgroud) 我使用的是 Visual Studio Code 1.32,当我尝试调试 python 脚本时,我在调试窗口中跟踪的变量被截断。即使当我尝试复制该值并将其粘贴到其他地方时,它也会被截断。这是一个例子。
[{u'info': {...}, u'hash': u'-853332357820028644'},
{u'info': {...}, u'hash': u'8548968643762198578'},
{u'info': {...}, u'hash': u'-700728790404992596'},
{u'info': {...}, u'hash': u'2290966790966655539'},
{u'info': {...}, u'hash': u'-1562196351113992652'},
{u'info': {...}, u'hash': u'-6557455005686897763'},
{u'info': {...}, u'hash': u''}]
Run Code Online (Sandbox Code Playgroud)
是否有我遗漏的设置可以让我看到完整的价值?
我正在为 Windows 10 使用 vscode(1.34.0 内部人员和稳定版本)开发 Go(1.12.0)api 服务器。源代码位于 Windows 机器上定义的 %GOPATH% 中。Delve(dlv.exe - 1.2.0 版)也安装在 %GOPATH%\bin 中,%GOPATH%\bin 也安装在 Windows %PATH% 中。
然后使用 docker-compose 在 Docker(Docker 桌面版本 2.0.0.3 (31259))容器中构建 go 应用程序(因为其他一些服务,如数据库和网络服务器正在其他容器中运行)。然后将最终的 go app 二进制文件与 delve 可执行文件一起复制到 Alpine-Linux 容器中,并且 delve 服务器以无头模式启动。没有源代码被复制到 Alpine-Linux 容器,只有二进制文件。
我还没有设法通过此设置在 vscode 中正确设置远程调试。调试器确实启动了我的应用程序,但任何断点都会立即变灰并变为“未验证”。当应用程序(api 服务器)运行时,它们也不会被命中。
使用 Jetbrains 的 Goland IDE 进行远程调试时,使用此设置进行调试非常有效(调试器启动,可以设置断点并命中)。
在过去的几天里,我试图找到一个解决方案,在 Chrome 调试、Node.js 调试等方面找到了类似问题的论坛帖子,以及这篇关于 Go 的帖子,特别是:
我还找到了这个示例配置:
https://github.com/lukehoban/webapp-go/blob/debugging/.vscode/launch.json
我认为我遇到的主要问题是,我在任何地方都找不到任何示例,说明如何为 Windows 机器上的远程调试配置正确设置 launch.json 中的程序路径(我也找不到任何涉及此内容的文档)。源代码仅在 GOPATH 中的 Windows 机器上,而不是在应用程序和 delve 运行的最终容器中(这同样适用于 Goland 调试器)
我的项目路径/目录结构(简化):
%GOPATH%\github.com\myuser\project_dir\
.vscode\
launch.json
cmd\ …Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的 nodejs 应用程序上的 VS Code 中运行调试器。我正在使用 .env 文件来存储我稍后使用 process.env 调用的环境变量。不幸的是,当我运行调试器时,这并没有加载文件。
启动.json:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "RegressionTestSuite",
"autoAttachChildProcesses": true,
"program": "node ${workspaceFolder}/node_modules/.bin/cucumber-js",
"args": [
],
"envFile": "${workspaceFolder}/.env"
},
]
}
Run Code Online (Sandbox Code Playgroud)
.env:
export SCREEN_SIZE_WIDTH='1366';
export SCREEN_SIZE_HEIGHT='768';
Run Code Online (Sandbox Code Playgroud)
当我运行 VS Code 调试器时,我的 .env 文件中没有环境变量。我应该如何调用 launch.json 中的 .env 文件?
我应该在我让它工作之后添加更多信息:
我最终使我的 .env 文件成为环境变量列表
.env 文件示例:
# Standard supported size is width='1366, height=768
SCREEN_SIZE_WIDTH='1366'
SCREEN_SIZE_HEIGHT='768'
EPAY_GUI_AUTOMATION_TEST_DEBUG_MODE='yadda_yadda_yadda'
Run Code Online (Sandbox Code Playgroud)
在我的 nodejs 世界构造函数中,我包括
world.js 示例:
enter code here`enter code here`require('dotenv').config();
process.env.EPAY_GUI_AUTOMATION_TEST_DEBUG_MODE
Run Code Online (Sandbox Code Playgroud)
在我使用的 hook.js …
我在 docker 容器内运行节点应用程序无法让 VS 代码调试器命中断点。
docker 容器公开端口 5859。在容器内,节点应用程序使用以下命令运行:
nodemon -L --watch src --exec babel-node src/server.js -- --inspect=0.0.0.0:5859 --nolazy
它报告调试器正在侦听:
[nodemon] 1.19.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: /app/src/**/*
[nodemon] starting `babel-node src/server.js --inspect=0.0.0.0:5859 --nolazy`
Debugger listening on ws://0.0.0.0:5859/5939f6b6-5ade-4ce5-9694-7df5f5b8385b
For help, see: https://nodejs.org/en/docs/inspector
Run Code Online (Sandbox Code Playgroud)
当我在 VS Code 中启动调试配置文件时,它似乎附加了。以下是正在运行的 docker 容器的日志中的一行。
但是,当我设置断点时,没有遇到断点。这是 babel 节点问题吗?是否有任何建议的路径可以让节点调试工作babel-node?
我的 VS Code 调试配置:
{
"type": "node",
"request": "attach",
"name": "Docker: GraphQL",
"port": 5859,
"protocol": "inspector",
"restart": true,
"remoteRoot": …Run Code Online (Sandbox Code Playgroud) 如何使用VS Code - Chrome 调试器在 VSCode 中调试 Angular 多项目工作区?迁移到 Angular 多项目工作区后,调试不再起作用。如果我设置了断点,我会收到以下消息。
断点设置但尚未绑定
我找到了一篇关于这个主题的博客文章:“用于 Angular 多项目工作区的 Visual Studio 代码断点”。我将以下内容添加到我的launch.json,我替换"webRoot": "${workspaceRoot}""为"webRoot": "${workspaceFolder}":
{
"name": "Launch new-app in Chrome against localhost (with sourcemaps)",
"type": "chrome",
"request": "launch",
"runtimeExecutable": "/usr/bin/chromium-browser",
"runtimeArgs": [
"--disable-extensions"
],
"url": "http://localhost:4200",
"webRoot": "${workspaceFolder}",
"sourceMaps": true,
"sourceMapPathOverrides": {
"/./*": "${webRoot}/projects/new-app/*",
"/src/*": "${webRoot}/projects/new-app/src/*",
"/*": "*",
"/./~/*": "${webRoot}/node_modules/*",
},
}
Run Code Online (Sandbox Code Playgroud)
我也new-app用正确的应用程序名称替换了它,但它仍然不起作用。
文件夹结构:
谁能帮我解决这个问题?
google-chrome visual-studio-code vscode-tasks angular vscode-debugger
如何配置我的 vs 代码 launch.json 以支持使用 watch 标志在 Nrwl Nest API 调试中生成?
目前这个配置对我有用,但我必须手动重建我的应用程序。
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/apps/api/src/main.ts",
"runtimeArgs": ["--nolazy", "-r", "ts-node/register"],
"outFiles": ["${workspaceFolder}/dist/apps/api/**/*.js"],
"autoAttachChildProcesses": true,
"skipFiles": [
"${workspaceFolder}/node_modules/**/*.js",
"<node_internals>/**/*.js"
]
},}
Run Code Online (Sandbox Code Playgroud) 我正在使用一个mocha.opts文件在 VS Code 中配置我的测试。
DeprecationWarning: Configuration via mocha.opts is DEPRECATED and will be removed from a future version of Mocha. Use RC files or package.json instead.
Run Code Online (Sandbox Code Playgroud)
我现在无法运行我的测试,想迁移到 mocharc 文件。我不介意 mocharc 格式是 yaml 或 json。mocha 文档很长并且没有提供迁移示例。
Q1:怎么做,有没有例子?
EDIT:
我发现了这个:https : //github.com/mochajs/mocha/blob/master/example/config/.mocharc.yml
这是包含所有可能字段的 .mocharc.yaml 配置的示例。
Q2: env vars 怎么样,我可以在 mocha.opts 中设置,如何在 .mocharc 中设置?
在 macOS 上使用 docker (docker-compose)。当运行 Docker 容器并将 Visual Studio Code (VSCode) 附加到活动的应用程序容器时,它会使 hyperkit 进程变得疯狂:( MacBook 粉丝必须全速运行以试图降低温度。
在 python 文件上使用 VSCode 时,我注意到操作,例如由 pylint 完成的,导致扫描/解析文件的操作会将 hyperkit CPU 使用率增加到最大值,并且 MacBook 粉丝全速运行 :(。Hyperkit CPU 使用率下降再次当pylint的动作完成时。
当使用 VSCode 调试我的 Django Python 应用程序时,hyperkit CPU 使用率再次达到最大值。当主动调试时,hyperkit 会变得疯狂,但之后它会再次稳定下来。
我目前正在将“绑定安装”切换为“卷安装”,我想我看到了一些改进,但还没有进行足够的测试来得出任何结论。我只将我的源代码切换为使用“卷挂载”而不是“绑定挂载”,并对我的静态文件和数据库执行相同的操作,看看是否会带来改进。
您可以在 Docker 卷上查看此stackoverflow 帖子,以获取有关该主题的更多信息。这是我发现的关于这个问题的一些帖子:https : //code.visualstudio.com/docs/remote/containers ? origin_team = TJ8BCJSSG https://github.com/docker/for-mac/issues/1759
关于如何控制 hyperkit 过程的任何其他想法?
[3 月 27 日更新] Docker 调试模式设置为 TRUE 我已将其更改为 FALSE,但我没有看到任何重大改进。
[3 月 27 日更新] 对我的源代码 (app) 文件夹使用“委托”选项,第一印象是积极的。我看到了显着的性能改进,我们必须看看它是否在委托上持续 Docker 文档仅供参考:容器的视图是权威的(在容器上的更新出现在主机中之前允许延迟)
[3 月 27 日更新] …
python docker docker-compose visual-studio-code vscode-debugger