vscode:nodemonで起動するときに、VisualStudioコードでブレークポイントを壊すことはできません

フィロウフェリン

VSCodeバージョン:1.10.2 OSバージョン:Windows 7 Profesionnal、SP1ノードバージョン:6.10.0

皆さんこんにちは。

nodemonで起動するときに、ビジュアルスタジオコードを使用してサーバー側でtypescriptコード(またはjavascriptコード)をデバッグしようとしています。私はlaunch.jsonに次のような新しい構成を追加しました:

{
      "type": "node",
      "request": "launch",
      "name": "Launch server with Nodemon",
      "runtimeExecutable": "nodemon",
      "runtimeArgs": [
        "--debug=5858"
      ],
      "program": "${workspaceRoot}/src/server.ts",
      "restart": true,
      "port": 5858,
      "console": "integratedTerminal",
      "internalConsoleOptions": "neverOpen",
      "outFiles": ["${workspaceRoot}/build/**/*.js"]
    }

私は、JavaScriptファイルを適切に構築するtscを実行しているvscodeのタスクを持っています。これは私の現在のタスク設定です:

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "0.1.0",
  "command": "tsc",
  "isShellCommand": true,
  "args": ["-p", "."],
  "showOutput": "silent",
  "problemMatcher": "$tsc"
}

typescriptファイルを変更すると、JavaScriptファイルが期待どおりに生成されます。また、javascriptファイルが生成されると、nodejsサーバーは期待どおりに再起動します。

しかし、ブレークポイント(typescriptファイルまたはjavascriptファイル)でブレークすることはできません。

それが問題なのか、何か足りないものがあるのか​​教えていただけますか?

ご協力ありがとうございました

フィロウフェリン

vscodeに問題があるようです(問題はgithub [ここ] [1]で開かれています)。ただし、現時点での回避策は、構成(launch.json)のプロトコルを「inspector」に設定することです。このオプションを使用すると、ブレークポイントに正しく到達するようになりました。

また、「runtimeArgs」オプション「--debug = 5858」「--inspect = 5858」に変更します。

{
  "type": "node",
  "request": "launch",
  "name": "Launch server with Nodemon",
  "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/nodemon",
  "runtimeArgs": [
    "--inspect=5858"
  ],
  "program": "${workspaceRoot}/src/server.ts",
  "restart": true,
  "port": 5858,
  "protocol": "inspector",
  "console": "integratedTerminal",
  "internalConsoleOptions": "neverOpen",
  "outFiles": ["${workspaceRoot}/build/**/*.js"],
  "sourceMaps": true
},

また、その後、次のようなメッセージが点滅するエラーが発生した場合:

ランタイムプロセスに接続できず、10000ミリ秒後にタイムアウトします-(理由:ターゲットに接続できません:接続ECONNREFUSED 127.0.0.1:5858)

これは、プログラムが短すぎて、デバッガーにブレークポイントを中断するのに十分な時間がないことを意味します。これを解決するには、オプション「runtimeArgs」に2番目のランタイム引数「--debug-brk」追加し、「stopOnEntry」オプションもtrueに設定ます。

最終的な構成は次のようになります。

{
  "type": "node",
  "request": "launch",
  "name": "Launch server with Nodemon",
  "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/nodemon",
  "runtimeArgs": [
    "--inspect=5858",
    "--debug-brk"
  ],
  "stopOnEntry": true,
  "program": "${workspaceRoot}/src/server.ts",
  "restart": true,
  "port": 5858,
  "protocol": "inspector",
  "console": "integratedTerminal",
  "internalConsoleOptions": "neverOpen",
  "outFiles": ["${workspaceRoot}/build/**/*.js"],
  "sourceMaps": true
}

エントリのjavascriptファイルの最初の行で壊れているはずです。次に、F5キーを押すと、独自のブレークポイントに到達します。

プログラムを実行するたびにF5キーを押したくない場合は、代わりに、少なくとも1000ミリ秒のタイムアウトでメインエントリコードをsetTimeOut関数内に埋め込むことができます。

これらのオプションはすべて、vscodeにブレークポイントを壊すのに十分な時間を与えます。

://github.com/Microsoft/vscode/issues/23900「GitHubの問題」

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Dockerコンテナーでのリモートデバッグ中に、VisualStudioコードでブレークポイントを壊すことはできません

分類Dev

Firefoxのすべてのブレークポイントを無効にすることはできません

分類Dev

sbtビルド定義コード内でインポートを使用することはできません

分類Dev

BigQueryはコンソールでクエリを実行できますが、ジョブとして起動することはできません

分類Dev

Pythonブレークポイント()をスクリプトで無効にすることはできますか(VSCodeデバッガーを使用)?

分類Dev

関数を名前空間にインポートすることはできますが、エクスポートすることはできませんか?

分類Dev

「GestureDetectorCompat」クラスをインポートすることはできません

分類Dev

IntelliJ IDEAでのデバッグ中に、ブレークポイント条件としてラムダを使用することはできません

分類Dev

レコードがエクスポートされた後にMicrosoftDynamics 365で更新されたため、このレコードにデータをインポートすることはできません

分類Dev

レポートのコントロールを明示的に参照することはできません(MS Access / VBA)

分類Dev

ScipyをJupyterNotebookにインポートすることはできません

分類Dev

React / Typescript / VScode-インポートパスを「.tsx」拡張子で終了することはできません

分類Dev

レガシーWindows10を使用したUbuntuデュアルブート:インストール後にどちらか一方を起動できますが、両方を起動することはできません

分類Dev

ソースコードがないクラスにブレークポイントを追加することはできますか?

分類Dev

VisualStudioコードでjupyterノートブックを起動できません

分類Dev

Ubuntuを内蔵ハードドライブにインストールすることはできません

分類Dev

スライダーをレスポンシブにすることはできません

分類Dev

COPYはcqlshでのみ使用できるため、JavaでCQLコマンドとして使用することはできません。CSVをテーブルにインポートする同様の方法はありますか?

分類Dev

jupyterノートブック内にpsycopg2をインポートすることはできませんが、python3コンソールではインポートできます

分類Dev

このDockerコンテナ内からJupyterノートブックを起動することはできません

分類Dev

AndroidサポートBottomSheetBehaviorを動的にすることはできませんか?

分類Dev

リンクリストの最初の要素(char)をメインコードにポップすることはできますが、コードのその部分を関数に入れることはできません

分類Dev

処理にAWSライブラリをインポートすることはできません

分類Dev

bincodeでファイルに書き込まれたオブジェクトをすぐにデコードすることはできません

分類Dev

タイプstdClassのオブジェクトをLaravelブレードテンプレートの配列として使用することはできません

分類Dev

jarファイルのクラスをNetBeansにインポートすることはできません

分類Dev

jarファイルのクラスをNetBeansにインポートすることはできません

分類Dev

テストを実行するときに春ブートオプションビーンはレイジーにすることはできません。

分類Dev

Angularテストで子コンポーネントをモックすることはできません

Related 関連記事

  1. 1

    Dockerコンテナーでのリモートデバッグ中に、VisualStudioコードでブレークポイントを壊すことはできません

  2. 2

    Firefoxのすべてのブレークポイントを無効にすることはできません

  3. 3

    sbtビルド定義コード内でインポートを使用することはできません

  4. 4

    BigQueryはコンソールでクエリを実行できますが、ジョブとして起動することはできません

  5. 5

    Pythonブレークポイント()をスクリプトで無効にすることはできますか(VSCodeデバッガーを使用)?

  6. 6

    関数を名前空間にインポートすることはできますが、エクスポートすることはできませんか?

  7. 7

    「GestureDetectorCompat」クラスをインポートすることはできません

  8. 8

    IntelliJ IDEAでのデバッグ中に、ブレークポイント条件としてラムダを使用することはできません

  9. 9

    レコードがエクスポートされた後にMicrosoftDynamics 365で更新されたため、このレコードにデータをインポートすることはできません

  10. 10

    レポートのコントロールを明示的に参照することはできません(MS Access / VBA)

  11. 11

    ScipyをJupyterNotebookにインポートすることはできません

  12. 12

    React / Typescript / VScode-インポートパスを「.tsx」拡張子で終了することはできません

  13. 13

    レガシーWindows10を使用したUbuntuデュアルブート:インストール後にどちらか一方を起動できますが、両方を起動することはできません

  14. 14

    ソースコードがないクラスにブレークポイントを追加することはできますか?

  15. 15

    VisualStudioコードでjupyterノートブックを起動できません

  16. 16

    Ubuntuを内蔵ハードドライブにインストールすることはできません

  17. 17

    スライダーをレスポンシブにすることはできません

  18. 18

    COPYはcqlshでのみ使用できるため、JavaでCQLコマンドとして使用することはできません。CSVをテーブルにインポートする同様の方法はありますか?

  19. 19

    jupyterノートブック内にpsycopg2をインポートすることはできませんが、python3コンソールではインポートできます

  20. 20

    このDockerコンテナ内からJupyterノートブックを起動することはできません

  21. 21

    AndroidサポートBottomSheetBehaviorを動的にすることはできませんか?

  22. 22

    リンクリストの最初の要素(char)をメインコードにポップすることはできますが、コードのその部分を関数に入れることはできません

  23. 23

    処理にAWSライブラリをインポートすることはできません

  24. 24

    bincodeでファイルに書き込まれたオブジェクトをすぐにデコードすることはできません

  25. 25

    タイプstdClassのオブジェクトをLaravelブレードテンプレートの配列として使用することはできません

  26. 26

    jarファイルのクラスをNetBeansにインポートすることはできません

  27. 27

    jarファイルのクラスをNetBeansにインポートすることはできません

  28. 28

    テストを実行するときに春ブートオプションビーンはレイジーにすることはできません。

  29. 29

    Angularテストで子コンポーネントをモックすることはできません

ホットタグ

アーカイブ