Community
Participate
Working Groups
JDT Core and UI from HEAD Opening an external Java file using File > Open File... results in exceptions. This used to work just fine before. Related to fix for bug 142530? !ENTRY org.eclipse.jdt.ui 4 0 2006-06-28 13:11:22.716 !MESSAGE Error in JDT Core during reconcile !STACK 1 Java Model Exception: Core Exception [code 368] Resource '/ ' does not exist. at org.eclipse.jdt.internal.core.SetContainerOperation.executeOperation(SetContainerOperation.java:167) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:720) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1737) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:784) at org.eclipse.jdt.core.JavaCore.setClasspathContainer(JavaCore.java:4075) at org.eclipse.jdt.internal.launching.JREContainerInitializer.initialize(JREContainerInitializer.java:57) at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:1970) at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1337) at org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:1470) at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2544) at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1847) at org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:384) at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:229) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:505) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:249) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:235) at org.eclipse.jdt.internal.core.JavaProject.getJavaProjectElementInfo(JavaProject.java:1513) at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2195) at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:53) at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:67) at org.eclipse.jdt.internal.core.CancelableNameEnvironment.<init>(CancelableNameEnvironment.java:26) at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:159) at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:248) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.makeConsistent(ReconcileWorkingCopyOperation.java:152) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:71) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:720) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:779) at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1131) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:97) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:82) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.initialReconcile(JavaReconcilingStrategy.java:172) at org.eclipse.jdt.internal.ui.text.CompositeReconcilingStrategy.initialReconcile(CompositeReconcilingStrategy.java:114) at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.initialReconcile(JavaCompositeReconcilingStrategy.java:125) at org.eclipse.jface.text.reconciler.MonoReconciler.initialProcess(MonoReconciler.java:103) at org.eclipse.jdt.internal.ui.text.JavaReconciler.initialProcess(JavaReconciler.java:331) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:170) Caused by: org.eclipse.core.internal.resources.ResourceException: Resource '/ ' does not exist. at org.eclipse.core.internal.resources.Resource.checkExists(Resource.java:304) at org.eclipse.core.internal.resources.Resource.checkAccessible(Resource.java:187) at org.eclipse.core.internal.resources.Project.checkAccessible(Project.java:142) at org.eclipse.core.internal.resources.Resource.touch(Resource.java:1598) at org.eclipse.core.internal.resources.Project.touch(Project.java:1045) at org.eclipse.jdt.internal.core.SetContainerOperation.executeOperation(SetContainerOperation.java:153) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:720) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1737) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:784) at org.eclipse.jdt.core.JavaCore.setClasspathContainer(JavaCore.java:4075) at org.eclipse.jdt.internal.launching.JREContainerInitializer.initialize(JREContainerInitializer.java:57) at org.eclipse.jdt.internal.core.JavaModelManager.initializeContainer(JavaModelManager.java:1970) at org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer(JavaModelManager.java:1337) at org.eclipse.jdt.core.JavaCore.getClasspathContainer(JavaCore.java:1470) at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:2544) at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:1847) at org.eclipse.jdt.internal.core.JavaProject.buildStructure(JavaProject.java:384) at org.eclipse.jdt.internal.core.Openable.generateInfos(Openable.java:229) at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:505) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:249) at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:235) at org.eclipse.jdt.internal.core.JavaProject.getJavaProjectElementInfo(JavaProject.java:1513) at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2195) at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:53) at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:67) at org.eclipse.jdt.internal.core.CancelableNameEnvironment.<init>(CancelableNameEnvironment.java:26) at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:159) at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:248) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.makeConsistent(ReconcileWorkingCopyOperation.java:152) at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:71) at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:720) at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:779) at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1131) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:97) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:82) at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.initialReconcile(JavaReconcilingStrategy.java:172) at org.eclipse.jdt.internal.ui.text.CompositeReconcilingStrategy.initialReconcile(CompositeReconcilingStrategy.java:114) at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.initialReconcile(JavaCompositeReconcilingStrategy.java:125) at org.eclipse.jface.text.reconciler.MonoReconciler.initialProcess(MonoReconciler.java:103) at org.eclipse.jdt.internal.ui.text.JavaReconciler.initialProcess(JavaReconciler.java:331) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:170) !SUBENTRY 1 org.eclipse.core.resources 4 368 2006-06-28 13:11:22.726 !MESSAGE Resource '/ ' does not exist.
I'm not sure how bug 142530 could cause this since no .jar file is involved here.
I see. Is indeed already broken in I20060620-1010 (works in 3.2_M20060609-1217).
Changed SetContainerOperation#executeOperation() to catch the CoreException when touching the project and ignore it if it is an external Java project. Added regression test ReconcilerTests#testExternal2(). Released for 3.3 M1 in HEAD.
Why got it introduced?
Anything having to do with classpath was completely rewritten recently.
Verified for 3.3 M1 using build I20060807-0010.