示例#1
0
 public void run() throws RepositoryException, IOException {
   if (pom == null) {
     pom = new File("pom.xml");
   }
   if (!pom.exists()) {
     System.err.println("'" + pom.getPath() + "' doesn't exist!");
     System.exit(1);
   }
   LocalPomReader pomReader = new LocalPomReader(pom);
   DependencyResolver resolver = new DependencyResolver().addWorkspaceReader(pomReader);
   for (String repo : repository) {
     resolver.addRemoteRepository(repo);
   }
   List<VersionConflict> conflicts =
       resolver.findVersionConflicts(pomReader.getArtifactCoordinates());
   for (VersionConflict conflict : conflicts) {
     System.out.println(
         conflict.parent
             + " expected version "
             + conflict.expected.getBaseVersion()
             + " for "
             + conflict.expected.getGroupId()
             + ":"
             + conflict.expected.getArtifactId()
             + " but got "
             + conflict.resolved.getBaseVersion());
     List<ClassDifference> differences;
     try {
       differences = resolver.diffArtifacts(conflict.expected, conflict.resolved);
     } catch (ArtifactResolutionException anfe) {
       System.err.println("Unable to rsolve artifacts to diff: " + anfe.getMessage());
       continue;
     }
     System.out.println(
         "Changes in "
             + conflict.resolved.getBaseVersion()
             + " from "
             + conflict.expected.getBaseVersion()
             + ":");
     for (ClassDifference diff : differences) {
       System.out.println("  " + diff);
     }
   }
 }