首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VSCode (Linux)中的Java语言服务器(redhad)错误

VSCode (Linux)中的Java语言服务器(redhad)错误
EN

Stack Overflow用户
提问于 2022-09-23 10:35:32
回答 2查看 242关注 0票数 -1

因为有几天我在启动语言服务器时遇到了一个错误。日志文件如下所示,指示为NollPointerException:

代码语言:javascript
复制
message: '[Error - 11:53:59 AM] Sep 23, 2022, 11:53:59 AM Error in JDT Core during AST creation\n' +
    '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\n' +
    '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\n' +
    '\tat org.eclipse.jdt.internal.compiler.util.JRTUtil.walkModuleImage(JRTUtil.java:242)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.loadModulesInJimage(JavaProject.java:983)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:782)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1103)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1048)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots(JavaProject.java:1025)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:538)\n' +
    '\tat org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:266)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:597)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:328)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:314)\n' +
    '\tat org.eclipse.jdt.internal.core.JavaProject.getModuleDescription(JavaProject.java:3917)\n' +
    '\tat org.eclipse.jdt.internal.core.BasicCompilationUnit.initAttributes(BasicCompilationUnit.java:86)\n' +
    '\tat org.eclipse.jdt.internal.core.BasicCompilationUnit.<init>(BasicCompilationUnit.java:67)\n' +
    '\tat org.eclipse.jdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:1176)\n' +
    '\tat org.eclipse.jdt.core.dom.ASTParser.createAST(ASTParser.java:868)\n' +
    '\tat org.eclipse.jdt.core.manipulation.CoreASTProvider$1.run(CoreASTProvider.java:294)\n' +
    '\tat org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)\n' +
    '\tat org.eclipse.jdt.core.manipulation.CoreASTProvider.createAST(CoreASTProvider.java:286)\n' +
    '\tat org.eclipse.jdt.core.manipulation.CoreASTProvider.getAST(CoreASTProvider.java:199)\n' +
    '\tat org.eclipse.jdt.ls.core.internal.handlers.SemanticTokensHandler.full(SemanticTokensHandler.java:46)\n' +
    '\tat org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.lambda$53(JDTLanguageServer.java:1051)\n' +
    '\tat org.eclipse.jdt.ls.core.internal.BaseJDTLanguageServer.lambda$0(BaseJDTLanguageServer.java:75)\n' +
    '\tat java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.CompletableFuture$Completion.exec(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)\n' +
    '\tat java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)\n',
  level: 'info',
  timestamp: '2022-09-23 11:53:59.397'
}

这种情况发生在像https://github.com/Reissner/icons这样简单的项目中,但并不总是如此。看上去有点不稳定。解决不了问题。我也是vs代码的新手。

也许这并不重要,但我在linux上工作,VSCode有1.71.2版本,我已经安装了扩展包for,版本为0.25.1,我不会说其他与Java相关的内容。

EN

回答 2

Stack Overflow用户

发布于 2022-09-27 09:13:29

看来发布文件不见了。

你试过这个解决方案了吗?https://github.com/redhat-developer/vscode-java/issues/2698#issuecomment-1258845512

票数 2
EN

Stack Overflow用户

发布于 2022-10-17 11:52:54

我只需在$JAVA_HOME文件夹中创建一个发布文件,如下所示(我使用的是JavaVersion11.0.15):

代码语言:javascript
复制
echo "JAVA_VERSION=\"11.0.15\"" > $JAVA_HOME/release
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73826448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档