redhat-developer / redhat-developer/vscode-java

Java extensions crashing upon open *.java file

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

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

extension-start
主要言語
TypeScript
スター
2.3k
フォーク
546
平均マージ
20時間 1分
マージ済み PR(30日)
11

説明

[provide a description of the issue]
The Language Support for Java server crashed 5 times in the last 3 minutes. The server will not be restarted.

Environment
  • Operating System: Windows 11 Pro 21H2
  • JDK version: openjdk 18.0.2 2022-07-19
  • Visual Studio Code version: 1.70.2
  • Java extension version: v1.9.0
Steps To Reproduce
  1. [step 1] Open Visual Studio Code
  2. [step 2] Open any *.java file

[Please attach a sample project reproducing the error]

class Main
{
	public static void main(String[] args)
	{
		System.out.println("Hello World!");
	}
}

Please attach logs

{
  message: "Use the JDK from 'JAVA_HOME,PATH' as the initial default project JDK.",
  level: 'info',
  timestamp: '2022-08-18 17:07:23.433'
}
{
  message: 'Starting Java server with: c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\jre\\17.0.3-win32-x86_64\\bin\\java --add-modules=ALL-SYSTEM --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/sun.nio.fs=ALL-UNNAMED -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Djava.import.generatesMetadataFilesAtProjectRoot=false -Dfile.encoding=utf8 -DwatchParentProcess=false -XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx1G -Xms100m -javaagent:c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\lombok\\lombok-1.18.24.jar -jar c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\server\\plugins\\org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar -configuration c:\\Users\\Otávio Augusto Silva\\AppData\\Roaming\\Code\\User\\globalStorage\\redhat.java\\1.9.0\\config_ss_win -data c:\\Users\\Otávio Augusto Silva\\AppData\\Roaming\\Code\\User\\workspaceStorage\\092e9f14627920ce78f64c2dbd9c572e\\redhat.java\\ss_ws',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.477'
}
{
  message: 'Starting Java server with: c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\jre\\17.0.3-win32-x86_64\\bin\\java --add-modules=ALL-SYSTEM --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/sun.nio.fs=ALL-UNNAMED -Declipse.application=org.eclipse.jdt.ls.core.id1 -Dosgi.bundles.defaultStartLevel=4 -Declipse.product=org.eclipse.jdt.ls.core.product -Djava.import.generatesMetadataFilesAtProjectRoot=false -Dfile.encoding=utf8 -DwatchParentProcess=false -XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx1G -Xms100m -javaagent:c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\lombok\\lombok-1.18.24.jar -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=c:\\Users\\Otávio Augusto Silva\\AppData\\Roaming\\Code\\User\\workspaceStorage\\092e9f14627920ce78f64c2dbd9c572e\\redhat.java -jar c:\\Users\\Otávio Augusto Silva\\.vscode\\extensions\\redhat.java-1.9.0-win32-x64\\server\\plugins\\org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar -configuration c:\\Users\\Otávio Augusto Silva\\AppData\\Roaming\\Code\\User\\globalStorage\\redhat.java\\1.9.0\\config_win -data c:\\Users\\Otávio Augusto Silva\\AppData\\Roaming\\Code\\User\\workspaceStorage\\092e9f14627920ce78f64c2dbd9c572e\\redhat.java\\jdt_ws',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.629'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.654'
}
{
  message: 'The Language Support for Java (Syntax Server) server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:23.657'
}
{
  message: '[Info  - 17:07:23] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.657'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.818'
}
{
  message: 'The Language Support for Java server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:23.821'
}
{
  message: '[Info  - 17:07:23] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.821'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.837'
}
{
  message: 'The Language Support for Java (Syntax Server) server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:23.840'
}
{
  message: '[Info  - 17:07:23] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.840'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.995'
}
{
  message: 'The Language Support for Java server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:23.997'
}
{
  message: '[Info  - 17:07:23] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:23.998'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.012'
}
{
  message: 'The Language Support for Java (Syntax Server) server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.015'
}
{
  message: '[Info  - 17:07:24] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.015'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.158'
}
{
  message: 'The Language Support for Java server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.161'
}
{
  message: '[Info  - 17:07:24] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.162'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.174'
}
{
  message: 'The Language Support for Java (Syntax Server) server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.176'
}
{
  message: '[Info  - 17:07:24] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.176'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.325'
}
{
  message: 'The Language Support for Java server crashed and will restart.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.327'
}
{
  message: '[Info  - 17:07:24] Connection to server got closed. Server will restart.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.328'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.339'
}
{
  message: 'The Language Support for Java (Syntax Server) server crashed 5 times in the last 3 minutes. The server will not be restarted.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.341'
}
{
  message: '[Error - 17:07:24] Connection to server got closed. Server will not be restarted.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.341'
}
{
  message: '*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message find class on InstrumentationImpl failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 494\n' +
    '*** java.lang.instrument ASSERTION FAILED ***: "result" with message instrumentation instance creation failed at e:\\jenkins\\tmp\\workspace\\build\\src\\src\\java.instrument\\share\\native\\libinstrument\\JPLISAgent.c line: 402\n',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.484'
}
{
  message: 'The Language Support for Java server crashed 5 times in the last 3 minutes. The server will not be restarted.',
  level: 'error',
  timestamp: '2022-08-18 17:07:24.487'
}
{
  message: '[Error - 17:07:24] Connection to server got closed. Server will not be restarted.',
  level: 'info',
  timestamp: '2022-08-18 17:07:24.488'
}

Current Result
Expected Result
Additional Informations

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

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

はじめの一歩

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

調査の方向性

提供された Main.java の例を開いて、Windows 11、JDK 18、VS Code 1.70.2、Java 拡張機能 v1.9.0 でクラッシュを再現することから始めます。Java language server の起動ログ、特に java.lang.instrument のアサーション失敗を調査します。.java ファイルを開いてもサーバーが繰り返しクラッシュしなくなれば完了です。

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

評価

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

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

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