Got this exception while doing some refactoring... I'm not sure what caused it, as other refactorings of exactly the same type, moving a class from one package to another (with same source and destination) worked without seeing this. Refactored by dragging the java files from one package to another in the project tree view.
java.lang.NullPointerException: Cannot invoke "javax.tools.JavaFileObject.isNameCompatible(String, javax.tools.JavaFileObject$Kind)" because "tree.sourcefile" is null at com.sun.tools.javac.tree.TreeInfo.isModuleInfo(TreeInfo.java:1286) at org.netbeans.lib.nbjavac.services.NBEnter.visitTopLevel(NBEnter.java:67) at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:549) at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:286) at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:301) at com.sun.tools.javac.comp.Enter.complete(Enter.java:603) at com.sun.tools.javac.main.JavaCompiler.readSourceFile(JavaCompiler.java:821) at com.sun.tools.javac.main.JavaCompiler.readSourceFile(JavaCompiler.java:778) at com.sun.tools.javac.main.JavaCompiler.lambda$new$0(JavaCompiler.java:341) at com.sun.tools.javac.code.ClassFinder.fillIn(ClassFinder.java:378) at com.sun.tools.javac.code.ClassFinder.complete(ClassFinder.java:303) at org.netbeans.lib.nbjavac.services.NBClassFinder.lambda$getCompleter$1(NBClassFinder.java:95) at com.sun.tools.javac.code.Symbol.complete(Symbol.java:682) at com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:1410) at com.sun.tools.javac.code.Symbol.apiComplete(Symbol.java:688) at com.sun.tools.javac.code.Symbol$TypeSymbol.getEnclosedElements(Symbol.java:859) at com.sun.tools.javac.code.Symbol$TypeSymbol.getEnclosedElements(Symbol.java:797) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitMethod(NPECheck.java:1154) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.visitMethod(NPECheck.java:546) at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:944) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreeScanner.scan(CancellableTreeScanner.java:69) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:648) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:546) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at org.netbeans.api.java.source.support.CancellableTreeScanner.scan(CancellableTreeScanner.java:78) at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203) at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:851) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreeScanner.scan(CancellableTreeScanner.java:69) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:648) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:546) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at org.netbeans.api.java.source.support.CancellableTreeScanner.scan(CancellableTreeScanner.java:78) at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:152) at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:619) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreeScanner.scan(CancellableTreeScanner.java:69) at org.netbeans.modules.java.hints.bugs.NPECheck$VisitorImpl.scan(NPECheck.java:648) at org.netbeans.modules.java.hints.bugs.NPECheck.computeExpressionsState(NPECheck.java:503) at org.netbeans.modules.java.hints.bugs.NPECheck.methodInvocation(NPECheck.java:308) at jdk.internal.reflect.GeneratedMethodAccessor100.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) [catch] at org.netbeans.modules.java.hints.providers.code.CodeHintProviderImpl$WorkerImpl.createErrors(CodeHintProviderImpl.java:315) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.runHint(HintsInvoker.java:794) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.access$400(HintsInvoker.java:89) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.runAndAdd(HintsInvoker.java:656) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:675) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:609) at com.sun.source.util.TreeScanner.visitExpressionStatement(TreeScanner.java:502) at com.sun.tools.javac.tree.JCTree$JCExpressionStatement.accept(JCTree.java:1594) at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:681) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:609) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) at com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272) at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1094) at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:681) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:609) at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96) at com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:224) at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:944) at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:681) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:609) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203) at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:851) at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:92) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:69) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:681) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:609) at com.sun.source.util.TreeScanner.scan(TreeScanner.java:111) at org.netbeans.api.java.source.support.CancellableTreePathScanner.scan(CancellableTreePathScanner.java:78) at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119) at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:152) at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:619) at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:66) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker$ScannerImpl.scan(HintsInvoker.java:700) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHintsImpl(HintsInvoker.java:244) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:227) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:192) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:165) at org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker.computeHints(HintsInvoker.java:127) at org.netbeans.modules.java.hints.spiimpl.hints.HintsTask.run(HintsTask.java:113) at org.netbeans.modules.java.hints.spiimpl.hints.HintsTask.run(HintsTask.java:63) at org.netbeans.modules.java.source.JavaSourceAccessor$CancelableTaskWrapper.run(JavaSourceAccessor.java:273) at org.netbeans.modules.parsing.impl.TaskProcessor.callParserResultTask(TaskProcessor.java:561) at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.run(TaskProcessor.java:786) at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279) at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.execute(TaskProcessor.java:702) at org.netbeans.modules.parsing.impl.TaskProcessor$CompilationJob.run(TaskProcessor.java:663) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418) at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45) at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033) Regards, Scott