in src/main/java/org/apache/easyant/tasks/findclasspath/ProjectDependencyStrategy.java [104:148]
public boolean checkProjectDependencies() {
execute();
try {
ResolutionCacheManager cacheMgr = getIvyInstance().getResolutionCacheManager();
String[] confs = splitConfs(getConf());
String resolveId = getResolveId();
if (resolveId == null) {
resolveId = ResolveOptions.getDefaultResolveId(getResolvedModuleId());
}
XmlReportParser parser = new XmlReportParser();
for (String conf : confs) {
File report = cacheMgr.getConfigurationResolveReportInCache(resolveId, conf);
parser.parse(report);
Artifact[] artifacts = parser.getArtifacts();
for (Artifact artifact : artifacts) {
ModuleRevisionId mrid = artifact.getModuleRevisionId();
if (mrid.getOrganisation().equals(getOrganisationToFind())) {
if (mrid.getName().equals(getModuleToFind())) {
log(mrid.getOrganisation() + "#" + mrid.getName() + " found in project dependencies !",
Project.MSG_DEBUG);
// use this version
loadCachePath(getOrganisationToFind(), getModuleToFind(), mrid.getRevision(),
getConfToFind(), getSettingsReference());
return true;
} else {
// if only organization is found in project
// dependencies use the same version with the
// required module
log("Only organisation : " + mrid.getOrganisation()
+ " was found in project dependencies !", Project.MSG_DEBUG);
loadCachePath(mrid.getOrganisation(), getModuleToFind(), mrid.getRevision(),
getConfToFind(), getSettingsReference());
return true;
}
}
}
}
} catch (Exception ex) {
throw new BuildException("impossible to check project dependencies: " + ex, ex);
}
return false;
}