microsoft / microsoft/vscode-java-debug

Unable to Debug/Attch Java Maven on Vscode

オープン
#1,382 コメント 5 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

ai-triaged attach question
主要言語
TypeScript
スター
591
フォーク
429
平均マージ
1日 9時間
マージ済み PR(30日)
19

説明

Unable to debug Java Maven Project.

Environment
  • Operating System: Win10 Enterprise . Build No : 19045.3208 version : 22H2
  • JDK version: 1.8.0_281
  • Visual Studio Code version: 1.81.1 User Setup
  • Java extension version: 0.25.13
  • Java Debugger extension version: v0.54.0
Steps To Reproduce
  1. Vs code setting.json
{
    
    "update.mode": "none",
    "workbench.startupEditor": "none",
    "telemetry.telemetryLevel": "off",
    "java.autobuild.enabled": false,
    "java.configuration.runtimes": [
        {
            "name": "JavaSE-1.8",
            "default": true,
            "path": "C:\\Program Files\\Java\\jdk1.8.0_281"
        }
    ]
}
  1. java debug log file

!ENTRY java-debug 1 0 2023-08-29 22:05:54.430
!MESSAGE Trying to attach to remote debuggee VM localhost:61739 .

!ENTRY java-debug 4 0 2023-08-29 22:05:54.468
!MESSAGE [error response][attach]: Failed to attach to remote debuggee VM. Reason: java.net.ConnectException: Connection refused: connect
!STACK 0
com.microsoft.java.debug.core.DebugException: Failed to attach to remote debuggee VM. Reason: java.net.ConnectException: Connection refused: connect
at com.microsoft.java.debug.core.adapter.AdapterUtils.createCompletionException(AdapterUtils.java:266)
at com.microsoft.java.debug.core.adapter.handler.AttachRequestHandler.handle(AttachRequestHandler.java:81)
at com.microsoft.java.debug.core.adapter.DebugAdapter.lambda$dispatchRequest$0(DebugAdapter.java:94)
at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(Unknown Source)
at java.base/java.util.concurrent.CompletableFuture.thenCompose(Unknown Source)
at com.microsoft.java.debug.core.adapter.DebugAdapter.dispatchRequest(DebugAdapter.java:93)
at com.microsoft.java.debug.core.adapter.ProtocolServer.dispatchRequest(ProtocolServer.java:118)
at com.microsoft.java.debug.core.protocol.AbstractProtocolServer.lambda$new$0(AbstractProtocolServer.java:81)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.net.ConnectException: Connection refused: connect
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Unknown Source)
at java.base/sun.nio.ch.Net.connect(Unknown Source)
at java.base/sun.nio.ch.NioSocketImpl.connect(Unknown Source)
at java.base/java.net.SocksSocketImpl.connect(Unknown Source)
at java.base/java.net.Socket.connect(Unknown Source)
at java.base/java.net.Socket.connect(Unknown Source)
at java.base/java.net.Socket.(Unknown Source)
at java.base/java.net.Socket.(Unknown Source)
at org.eclipse.jdi.internal.connect.SocketTransportService$2.run(SocketTransportService.java:147)
... 1 more

Launch setting file

{
				"type": "java",
				"name": "Attach Service",
				"request": "attach",
				"processId" : "${command:PickJavaProcess}",
				"timeout": 300000

			}
Current Result

When the type is launch in Launch setting , the debugger starts but after a certain time period the debugger stops , but application is in running mode in the backend . on Debugger console I can see "ERROR: transport error 202: recv error: Connection reset by peer".
So I tried to do attach java process , Vscode is not able to attach , it shows the java process on popup , when I click on it , it throws error dialog saying "Failed to attach remote debuggee VM. Reason java.net.connectException:connection refused connect"

Expected Result

debugger should work

Additional Informations

Back 5/6months ago , I was able to do the debugging correct with the same project on vscode , then I recently updated it to debug the same project and its throwing exception now.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、示されている setting.json と Java の起動構成で失敗を再現し、次に AttachRequestHandler.java 周辺の java-debug ログと connection-refused エラーを調べます。報告されている Windows および JDK のバージョンで、起動と attach の動作を比較します。完了の条件は、デバッガーが接続されたままになり、選択した Java プロセスに attach できることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, vscode
領域
developer-experience, devtools
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。