redhat-developer / redhat-developer/vscode-java
Java language server fails in JrtFileSystem.walkModuleImage() with 1.10.0
@testforstephen is already working on this.
Since Sep 19, 2022.
- Dominant language
- TypeScript
- Stars
- 2.3k
- Forks
- 546
- Avg merge
- 20h 1m
- Merged PRs (30d)
- 11
Description
Java language server fails when opening a project with the following error/stacktrace:
[Error - 5:16:03 PM] Sep 1, 2022, 5:16:03 PM Initialization failed
Cannot invoke "org.eclipse.jdt.internal.compiler.util.JrtFileSystem.walkModuleImage(org.eclipse.jdt.internal.compiler.util.JRTUtil$JrtFileVisitor, int)" because the return value of "org.eclipse.jdt.internal.compiler.util.JRTUtil.getJrtSystem(java.io.File, String)" is null
java.lang.NullPointerException: Cannot invoke "org.eclipse.jdt.internal.compiler.util.JrtFileSystem.walkModuleImage(org.eclipse.jdt.internal.compiler.util.JRTUtil$JrtFileVisitor, int)" because the return value of "org.eclipse.jdt.internal.compiler.util.JRTUtil.getJrtSystem(java.io.File, String)" is null
at org.eclipse.jdt.internal.compiler.util.JRTUtil.walkModuleImage(JRTUtil.java:242)
at org.eclipse.jdt.internal.core.JavaProject.loadModulesInJimage(JavaProject.java:983)
at org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:782)
at org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1103)
at org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1048)
at org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1025)
at org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:538)
at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:266)
at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:597)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:328)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:314)
at org.eclipse.jdt.internal.core.JavaElement.getChildren(JavaElement.java:269)
at org.eclipse.jdt.internal.core.JavaProject.getPackageFragmentRoots(JavaProject.java:2384)
at org.eclipse.jdt.internal.core.JavaProject.getPackageFragments(JavaProject.java:2408)
at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager.cleanupResources(ProjectsManager.java:278)
at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager.initializeProjects(ProjectsManager.java:107)
at org.eclipse.jdt.ls.core.internal.handlers.InitHandler$1.runInWorkspace(InitHandler.java:244)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:43)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Downgrading the extension to the previous version (1.9.0) fixed the issue.
Environment
- Operating System: Ubuntu 22.04, but also seen by coworkers using MacOS
- JDK version: OpenJDK Runtime Environment Zulu17.28+13-CA (build 17+35-LTS)
- Visual Studio Code version: 1.70.2
- Java extension version: 1.10.0
Steps To Reproduce
- Upgrade to the newest vscode-java release
- Open an existing Java project
I don't know if it happens for all java projects, our is pretty complex and I unfortunately cannot share it.
Current Result
Opening an existing java project fails (it logs errors as described above and never finishes).
Expected Result
Opening java projects that worked in 1.9.0 should work with the latest version.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.