Community
Participate
Working Groups
Created attachment 285625 [details] Error Dialog I'm using eclipse version 2020-12 with JDK version 15. When in Debug mode, when stopping at a Breakpoint, select a variable and press Ctrl + Shift + i to see its contents, the error attached. Log: java.lang.NullPointerException: Cannot invoke "org.eclipse.jdt.core.dom.Type.isSimpleType()" because "type" is null at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.getTypeName(SourceBasedSourceGenerator.java:798) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildMethodDeclaration(SourceBasedSourceGenerator.java:493) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildBody(SourceBasedSourceGenerator.java:434) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildTypeBody(SourceBasedSourceGenerator.java:376) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildTypeDeclaration(SourceBasedSourceGenerator.java:660) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.endVisit(SourceBasedSourceGenerator.java:1104) at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:532) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3012) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3083) at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:261) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3012) at org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator.createEvaluationSourceFromSource(EvaluationSourceGenerator.java:303) at org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator.getSource(EvaluationSourceGenerator.java:383) at org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine.getCompiledExpression(ASTEvaluationEngine.java:386) at org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine.evaluate(ASTEvaluationEngine.java:150) at org.eclipse.jdt.internal.debug.ui.actions.EvaluateAction$1.run(EvaluateAction.java:261) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
Thanks Samuel for the bug report. I have passed it on to the JDT team to look into further.
If it can help, I'm using Eclipse: Version: 2021-12 (4.22) Build id: I20211124-1800 I get the following error when I do "Inspect (Ctrl+Shift+I)": java.lang.NullPointerException: Cannot invoke "String.replace(char, char)" because "typeName" is null at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.getDotName(SourceBasedSourceGenerator.java:310) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildMethodDeclaration(SourceBasedSourceGenerator.java:527) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildBody(SourceBasedSourceGenerator.java:445) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildTypeBody(SourceBasedSourceGenerator.java:387) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.buildTypeDeclaration(SourceBasedSourceGenerator.java:630) at org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator.endVisit(SourceBasedSourceGenerator.java:1157) at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:505) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3200) at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:499) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3200) at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:258) at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) at org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator.createEvaluationSourceFromSource(EvaluationSourceGenerator.java:319) at org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator.getSource(EvaluationSourceGenerator.java:399) at org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine.getCompiledExpression(ASTEvaluationEngine.java:396) at org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine.evaluate(ASTEvaluationEngine.java:154) at org.eclipse.jdt.internal.debug.ui.JavaWatchExpressionDelegate$EvaluationRunnable.run(JavaWatchExpressionDelegate.java:153) at org.eclipse.jdt.internal.debug.core.model.JDIThread$ThreadJob.run(JDIThread.java:3436) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
(In reply to Enrico Zanaga from comment #2) > If it can help, I'm using Eclipse: > > Version: 2021-12 (4.22) > Build id: I20211124-1800 > > I get the following error when I do "Inspect (Ctrl+Shift+I)": > > java.lang.NullPointerException: Cannot invoke "String.replace(char, char)" > because "typeName" is null > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > getDotName(SourceBasedSourceGenerator.java:310) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildMethodDeclaration(SourceBasedSourceGenerator.java:527) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildBody(SourceBasedSourceGenerator.java:445) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildTypeBody(SourceBasedSourceGenerator.java:387) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildTypeDeclaration(SourceBasedSourceGenerator.java:630) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > endVisit(SourceBasedSourceGenerator.java:1157) > at > org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:505) > at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) > at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3200) > at > org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:499) > at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) > at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3200) > at > org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:258) > at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3129) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator. > createEvaluationSourceFromSource(EvaluationSourceGenerator.java:319) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator. > getSource(EvaluationSourceGenerator.java:399) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine. > getCompiledExpression(ASTEvaluationEngine.java:396) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine. > evaluate(ASTEvaluationEngine.java:154) > at > org.eclipse.jdt.internal.debug.ui. > JavaWatchExpressionDelegate$EvaluationRunnable. > run(JavaWatchExpressionDelegate.java:153) > at > org.eclipse.jdt.internal.debug.core.model.JDIThread$ThreadJob.run(JDIThread. > java:3436) > at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) Can you attach a simple Java program and steps to reproduce?
I get the same exact error with conditional breakpoints. I'm astonished people are not running into this and there is only one vote.
Ditto for breakpoint tracing.
(In reply to Samuel Silva from comment #0) > Created attachment 285625 [details] > Error Dialog > > I'm using eclipse version 2020-12 with JDK version 15. > When in Debug mode, when stopping at a Breakpoint, select a variable and > press Ctrl + Shift + i to see its contents, the error attached. > > Log: > java.lang.NullPointerException: Cannot invoke > "org.eclipse.jdt.core.dom.Type.isSimpleType()" because "type" is null > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > getTypeName(SourceBasedSourceGenerator.java:798) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildMethodDeclaration(SourceBasedSourceGenerator.java:493) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildBody(SourceBasedSourceGenerator.java:434) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildTypeBody(SourceBasedSourceGenerator.java:376) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > buildTypeDeclaration(SourceBasedSourceGenerator.java:660) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.SourceBasedSourceGenerator. > endVisit(SourceBasedSourceGenerator.java:1104) > at > org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:532) > at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3012) > at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3083) > at > org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:261) > at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3012) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator. > createEvaluationSourceFromSource(EvaluationSourceGenerator.java:303) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.EvaluationSourceGenerator. > getSource(EvaluationSourceGenerator.java:383) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine. > getCompiledExpression(ASTEvaluationEngine.java:386) > at > org.eclipse.jdt.internal.debug.eval.ast.engine.ASTEvaluationEngine. > evaluate(ASTEvaluationEngine.java:150) > at > org.eclipse.jdt.internal.debug.ui.actions.EvaluateAction$1. > run(EvaluateAction.java:261) > at > org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext. > java:122) Please provide piece of code to reproduce the issue