Author: hibou Date: Tue Mar 26 19:54:44 2013 New Revision: 1461288 URL: http://svn.apache.org/r1461288 Log: IVYDE-335 : IvyDERuntimeClasspathResolver does not resolve entries that don't implement IRuntimeClasspathEntry2 (thanks to Nathan Summers)
Modified: ant/ivy/ivyde/trunk/doc/release-notes.html ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/IvyDERuntimeClasspathEntryResolver.java Modified: ant/ivy/ivyde/trunk/doc/release-notes.html URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/release-notes.html?rev=1461288&r1=1461287&r2=1461288&view=diff ============================================================================== --- ant/ivy/ivyde/trunk/doc/release-notes.html (original) +++ ant/ivy/ivyde/trunk/doc/release-notes.html Tue Mar 26 19:54:44 2013 @@ -118,6 +118,7 @@ Here is the list of people who have cont <li>Peter Oxenham</li> <li>Carsten Pfeiffer</li> <li>Joe Sortelli</li> +<li>Nathan Summers</li> <li>Phillip Webb</li> <li>James Wilkins</li> </ul> @@ -138,6 +139,7 @@ List of changes since <a href="/ivy/ivyd <li>IMPROVE: ivy.xml and ivysettings.xml files are not better detected as such, so they can be open with the Ivy editors</li> </ul> <ul> + <li>FIX: IvyDERuntimeClasspathResolver does not resolve entries that don't implement IRuntimeClasspathEntry2 (IVYDE-335) (thanks to Nathan Summers)</li> <li>FIX: IvyDE can corrupt the workspace (IVYDE-341) (thanks to Bernd Kurz)</li> <li>FIX: org.eclipse.swt.SWTException: Invalid thread access with Eclipse Juno (IVYDE-313)</li> <li>FIX: Divide by zero during IvyDE resolve (IVYDE-312) (thanks to Joe Sortelli)</li> Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/IvyDERuntimeClasspathEntryResolver.java URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/IvyDERuntimeClasspathEntryResolver.java?rev=1461288&r1=1461287&r2=1461288&view=diff ============================================================================== --- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/IvyDERuntimeClasspathEntryResolver.java (original) +++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/IvyDERuntimeClasspathEntryResolver.java Tue Mar 26 19:54:44 2013 @@ -35,6 +35,7 @@ import org.eclipse.jdt.core.IClasspathCo import org.eclipse.jdt.core.IClasspathEntry; import org.eclipse.jdt.core.IJavaProject; import org.eclipse.jdt.core.JavaCore; +import org.eclipse.jdt.core.JavaModelException; import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants; import org.eclipse.jdt.launching.IRuntimeClasspathEntry; import org.eclipse.jdt.launching.IRuntimeClasspathEntry2; @@ -57,9 +58,15 @@ public class IvyDERuntimeClasspathEntryR return new IRuntimeClasspathEntry[0]; } + IJavaProject project = entry.getJavaProject(); + + return computeDefaultContainerEntries(entry, project); + } + + private IRuntimeClasspathEntry[] computeDefaultContainerEntries(IRuntimeClasspathEntry entry, + IJavaProject project) throws JavaModelException, CoreException { IvyClasspathContainer ivycp; - IJavaProject project = entry.getJavaProject(); if (project == null) { ivycp = new IvyClasspathContainer(null, entry.getPath(), null, null); } else { @@ -139,6 +146,9 @@ public class IvyDERuntimeClasspathEntryR public IRuntimeClasspathEntry[] resolveRuntimeClasspathEntry(IRuntimeClasspathEntry entry, IJavaProject project) throws CoreException { if (!(entry instanceof IRuntimeClasspathEntry2)) { + if (entry.getType() == IRuntimeClasspathEntry.CONTAINER) { + return computeDefaultContainerEntries(entry, project); + } return new IRuntimeClasspathEntry[] {entry}; }