perf_34x - 270409
diff --git a/org.eclipse.jdt.core.tests.performance/src/org/eclipse/jdt/core/tests/performance/FullSourceWorkspaceTests.java b/org.eclipse.jdt.core.tests.performance/src/org/eclipse/jdt/core/tests/performance/FullSourceWorkspaceTests.java
index a5c5fb6..84327af 100644
--- a/org.eclipse.jdt.core.tests.performance/src/org/eclipse/jdt/core/tests/performance/FullSourceWorkspaceTests.java
+++ b/org.eclipse.jdt.core.tests.performance/src/org/eclipse/jdt/core/tests/performance/FullSourceWorkspaceTests.java
@@ -643,13 +643,17 @@
System.out.println("("+(System.currentTimeMillis()-start)+"ms)");
// Create lib entries for the JDKs
+ String jreLibPath = JavaCore.getClasspathVariable("JRE_LIB").toOSString();
System.out.print("Create lib entries for the JDKs...");
start = System.currentTimeMillis();
String[] jdkLibs = Util.getJavaClassLibs();
int jdkLibsLength = jdkLibs.length;
IClasspathEntry[] jdkEntries = new IClasspathEntry[jdkLibsLength];
+ int jdkEntriesCount = 0;
for (int i=0; i<jdkLibsLength; i++) {
- jdkEntries[i] = JavaCore.newLibraryEntry(new Path(jdkLibs[i]), null, null);
+ if (!jdkLibs[i].equals(jreLibPath)) { // do not include JRE_LIB in additional JDK entries
+ jdkEntries[jdkEntriesCount++] = JavaCore.newLibraryEntry(new Path(jdkLibs[i]), null, null);
+ }
}
System.out.println(jdkLibsLength+" found ("+(System.currentTimeMillis()-start)+"ms)");
@@ -670,9 +674,9 @@
// Set jdk jars onto the project classpath
IClasspathEntry[] entries = ALL_PROJECTS[i].getRawClasspath();
int entriesLength = entries.length;
- if (!entries[0].equals(jdkEntries[0])) {
- System.arraycopy(entries, 0, entries = new IClasspathEntry[jdkLibsLength+entriesLength], jdkLibsLength, entriesLength);
- System.arraycopy(jdkEntries, 0, entries, 0, jdkLibsLength);
+ if (!entries[entriesLength-1].equals(jdkEntries[jdkEntriesCount-1])) {
+ System.arraycopy(entries, 0, entries = new IClasspathEntry[jdkEntriesCount+entriesLength], 0, entriesLength);
+ System.arraycopy(jdkEntries, 0, entries, entriesLength, jdkEntriesCount);
ALL_PROJECTS[i].setRawClasspath(entries, null);
}