Index: IvyResolveJob.java =================================================================== --- IvyResolveJob.java (revision 762595) +++ IvyResolveJob.java (working copy) @@ -46,6 +46,7 @@ import org.apache.ivy.core.module.descriptor.ModuleDescriptor; import org.apache.ivy.core.module.id.ModuleRevisionId; import org.apache.ivy.core.report.ArtifactDownloadReport; +import org.apache.ivy.core.report.ConfigurationResolveReport; import org.apache.ivy.core.report.ResolveReport; import org.apache.ivy.core.resolve.DownloadOptions; import org.apache.ivy.core.resolve.IvyNode; @@ -178,6 +179,25 @@ IvyNode node = (IvyNode) it.next(); result.put(node.getId(), node); } + String[] configurations = r.getConfigurations(); + for (int i = 0; i < configurations.length; i++) { + ConfigurationResolveReport configurationReport = r.getConfigurationReport(configurations[i]); + IvyNode[] downloadedNodes = configurationReport.getDownloadedNodes(); + for (int j = 0; j < downloadedNodes.length; j++) { + ArtifactDownloadReport[] downloadReports = configurationReport.getDownloadReports(downloadedNodes[j].getId()); + for (int k = 0; k < downloadReports.length; k++) { + result.put(downloadReports[k].getArtifact().getModuleRevisionId(), downloadedNodes[j]); + } + } + IvyNode[] searchedNodes = configurationReport.getSearchedNodes(); + for (int j = 0; j < searchedNodes.length; j++) { + ArtifactDownloadReport[] downloadReports = configurationReport.getDownloadReports(searchedNodes[j].getId()); + for (int k = 0; k < downloadReports.length; k++) { + result.put(downloadReports[k].getArtifact().getModuleRevisionId(), searchedNodes[j]); + } + } + + } return result; }