package openmods.depcheck;

import java.io.File;
import java.util.List;

public class DependencyChecker {

    public static void main(String[] args) {
        final File topDir = new File("data");
        final SourceParser depWalker = new SourceParser(topDir);
        final SourceDependencies availableDependencies = depWalker.collectAvailableDependencies();

        DependencyCollector collector = new DependencyCollector(availableDependencies);
        new TargetParser(topDir).accept(collector);

        final List<DependencyResolveResult> results = collector.getResults();
        new ResultPrinter().print(new File(topDir, "output.html"), availableDependencies, results);
    }
}

@@ -70,133 +70,470 @@
 t;%0A%0A
-public class DependencyChecker %7B%0A%0A    public static void main(String%5B%5D args) %7B%0A        final File topDir = new File(%22data%22);%0A
+import org.slf4j.Logger;%0Aimport org.slf4j.LoggerFactory;%0A%0Apublic class DependencyChecker %7B%0A%0A    private static final Logger logger = LoggerFactory.getLogger(DependencyChecker.class);%0A%0A    public static void main(String%5B%5D args) %7B%0A        if (args.length == 0)%0A            args = new String%5B%5D %7B %22data%22 %7D;%0A%0A        for (String dir : args) %7B%0A            final File topDir = new File(dir);%0A            logger.info(%22Processing dir: %7B%7D%22, topDir.getAbsolutePath());%0A    
     
@@ -589,24 +589,28 @@
 er(topDir);%0A
+    
         fina
@@ -705,16 +705,20 @@
         
+   
+ 
 Dependen
@@ -793,24 +793,28 @@
 s);%0A        
+    
 new TargetPa
@@ -850,24 +850,28 @@
 );%0A%0A        
+ 
+   
 final List%3CD
@@ -932,24 +932,28 @@
 ();%0A        
+   
+ 
 new ResultPr
@@ -1028,20 +1028,30 @@
 , results);%0A
+        %7D%0A
     %7D%0A%7D%0A

Allow to select working dir via program args