Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTroy Bishop2013-06-21 04:47:50 +0000
committerJayaprakash Arthanareeswaran2013-11-11 14:17:49 +0000
commit40bd4fb780cd76f29e884eddc861fb9be2844fff (patch)
tree86ee692fc32dd23a695f81938e8308c5b36e96d3
parent6ac83dcf3cc4ba0c035518552dee24699d2c3d53 (diff)
downloadeclipse.jdt.core-40bd4fb780cd76f29e884eddc861fb9be2844fff.tar.gz
eclipse.jdt.core-40bd4fb780cd76f29e884eddc861fb9be2844fff.tar.xz
eclipse.jdt.core-40bd4fb780cd76f29e884eddc861fb9be2844fff.zip
Fix for Bug 405051 - JavaModel.refreshExternalArchives needs to happenM20131120-0800M20131113-0800
before search is primed Signed-off-by: Troy Bishop <tjbishop@ca.ibm.com>
-rw-r--r--org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java29
1 files changed, 15 insertions, 14 deletions
diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
index ab5d524fc8..7445fb4413 100644
--- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
+++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/JavaCore.java
@@ -4051,6 +4051,21 @@ public final class JavaCore extends Plugin {
// Creation of external folder project failed. Log it and continue;
Util.log(jme, "Error while processing external folders"); //$NON-NLS-1$
}
+
+ // ensure external jars are refreshed (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=93668)
+ // before search is initialized (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=405051)
+ final JavaModel model = manager.getJavaModel();
+ try {
+ if (monitor != null)
+ monitor.subTask(Messages.javamodel_refreshing_external_jars);
+ model.refreshExternalArchives(
+ null/*refresh all projects*/,
+ monitor == null ? null : new SubProgressMonitor(monitor, 1) // 1% of the time is spent in jar refresh
+ );
+ } catch (JavaModelException e) {
+ // refreshing failed: ignore
+ }
+
// initialize delta state
if (monitor != null)
monitor.subTask(Messages.javamodel_initializing_delta_state);
@@ -4105,7 +4120,6 @@ public final class JavaCore extends Plugin {
} catch (CoreException e) {
// could not read version number: consider it is new
}
- final JavaModel model = manager.getJavaModel();
String newVersionNumber = Byte.toString(State.VERSION);
if (!newVersionNumber.equals(versionNumber)) {
// build state version number has changed: touch every projects to force a rebuild
@@ -4139,19 +4153,6 @@ public final class JavaCore extends Plugin {
Util.log(e, "Could not persist build state version number"); //$NON-NLS-1$
}
}
-
- // ensure external jars are refreshed (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=93668)
- try {
- if (monitor != null)
- monitor.subTask(Messages.javamodel_refreshing_external_jars);
- model.refreshExternalArchives(
- null/*refresh all projects*/,
- monitor == null ? null : new SubProgressMonitor(monitor, 1) // 1% of the time is spent in jar refresh
- );
- } catch (JavaModelException e) {
- // refreshing failed: ignore
- }
-
} finally {
if (monitor != null) monitor.done();
}

Back to the top