Lines 25-30
Link Here
|
25 |
import org.eclipse.jdt.core.IClasspathContainer; |
25 |
import org.eclipse.jdt.core.IClasspathContainer; |
26 |
import org.eclipse.jdt.core.IClasspathEntry; |
26 |
import org.eclipse.jdt.core.IClasspathEntry; |
27 |
import org.eclipse.jdt.core.IJavaProject; |
27 |
import org.eclipse.jdt.core.IJavaProject; |
|
|
28 |
import org.eclipse.jdt.core.IPackageFragmentRoot; |
28 |
import org.eclipse.jdt.core.JavaCore; |
29 |
import org.eclipse.jdt.core.JavaCore; |
29 |
import org.eclipse.jdt.launching.IRuntimeClasspathEntry; |
30 |
import org.eclipse.jdt.launching.IRuntimeClasspathEntry; |
30 |
import org.eclipse.jdt.launching.IRuntimeContainerComparator; |
31 |
import org.eclipse.jdt.launching.IRuntimeContainerComparator; |
Lines 289-295
Link Here
|
289 |
// fall through if not the special JRELIB variable |
290 |
// fall through if not the special JRELIB variable |
290 |
default: |
291 |
default: |
291 |
if (!expandedPath.contains(entry)) { |
292 |
if (!expandedPath.contains(entry)) { |
292 |
expandedPath.add(entry); |
293 |
// resolve project relative paths - @see bug 57732 & bug 248466 |
|
|
294 |
if (entry.getEntryKind() != IClasspathEntry.CPE_SOURCE) { |
295 |
IPackageFragmentRoot[] roots = project.findPackageFragmentRoots(entry); |
296 |
for (int i = 0; i < roots.length; i++) { |
297 |
IPackageFragmentRoot root = roots[i]; |
298 |
IRuntimeClasspathEntry r = JavaRuntime.newArchiveRuntimeClasspathEntry(root.getPath()); |
299 |
r.setSourceAttachmentPath(entry.getSourceAttachmentPath()); |
300 |
r.setSourceAttachmentRootPath(entry.getSourceAttachmentRootPath()); |
301 |
if (!expandedPath.contains(r)) { |
302 |
expandedPath.add(r); |
303 |
} |
304 |
} |
305 |
} else { |
306 |
expandedPath.add(entry); |
307 |
} |
293 |
} |
308 |
} |
294 |
break; |
309 |
break; |
295 |
} |
310 |
} |