diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaReconciler.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaReconciler.java index 6d3635fb48c..ba6bf2534fc 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaReconciler.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaReconciler.java @@ -23,6 +23,7 @@ import org.eclipse.core.runtime.Assert; import org.eclipse.core.runtime.ICoreRunnable; +import org.eclipse.core.runtime.OperationCanceledException; import org.eclipse.core.runtime.jobs.Job; import org.eclipse.core.resources.IMarker; @@ -49,6 +50,7 @@ import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.spelling.SpellingService; +import org.eclipse.jdt.core.ClasspathContainerInitializer; import org.eclipse.jdt.core.ElementChangedEvent; import org.eclipse.jdt.core.ICompilationUnit; import org.eclipse.jdt.core.IElementChangedListener; @@ -394,6 +396,11 @@ protected void reconcilerReset() { */ @Override protected void initialProcess() { + try { + Job.getJobManager().join(ClasspathContainerInitializer.class, null); + } catch (OperationCanceledException | InterruptedException e) { + // Ignore + } synchronized (fMutex) { super.initialProcess(); }