private static IRuntimeClasspathEntry[] computeDefaultContainerEntries(
IvyClasspathContainerImpl ivycp, IRuntimeClasspathEntry entry) throws CoreException {
IClasspathEntry[] cpes;
if (ivycp.getClasspathEntries() == null
|| ivycp.getConf().getInheritedAdvancedSetup().isResolveBeforeLaunch()) {
ClasspathEntriesResolver resolver = new ClasspathEntriesResolver(ivycp, false);
ResolveRequest request = new ResolveRequest(resolver, ivycp.getState());
request.setForceFailOnError(true);
request.setInWorkspace(ivycp.getConf().getInheritedClasspathSetup()
.isResolveInWorkspace());
request.setTransitive(ivycp.getConf().getInheritedClasspathSetup()
.isTransitiveResolve());
IvyResolveJob resolveJob = IvyPlugin.getDefault().getIvyResolveJob();
IStatus status = resolveJob.launchRequest(request, new NullProgressMonitor());
if (status.getCode() != IStatus.OK) {
throw new CoreException(status);
}
cpes = resolver.getClasspathEntries();
} else {
cpes = ivycp.getClasspathEntries();
}
List resolved = new ArrayList(cpes.length);
List projects = new ArrayList();