Interface DependencyAnalyzer

All Known Implementing Classes:
ASMDependencyAnalyzer

public interface DependencyAnalyzer
Gets the set of classes referenced by a library given either as a jar file or an exploded directory.
Author:
Mark Hobson
  • Method Details

    • analyze

      default Set<String> analyze(URL url) throws IOException

      analyze.

      Parameters:
      url - the JAR file or directory to analyze
      Returns:
      the set of class names referenced by the library
      Throws:
      IOException - if an error occurs reading a JAR or .class file
    • analyze

      default Set<String> analyze(URL url, ClassesPatterns excludeClasses) throws IOException

      analyze.

      Parameters:
      url - the JAR file or directory to analyze
      excludeClasses - a class list to exclude
      Returns:
      the set of class names referenced by the library
      Throws:
      IOException - if an error occurs reading a JAR or .class file
    • analyzeUsages

      Set<DependencyUsage> analyzeUsages(URL url, ClassesPatterns excludeClasses) throws IOException

      analyzeUsages.

      Parameters:
      url - the JAR file or directory to analyze
      Returns:
      the set of class names referenced by the library, paired with the classes declaring those references.
      Throws:
      IOException - if an error occurs reading a JAR or .class file