Dependencies Example

Consider the following class (the source is available in src/test/java/mete/testing/misc/DependenciesEG.java):
public class DependenciesEG extends EmptyRoot implements EmptyInterface {
  private MethodV field;
  public int method(OneString arg) {
    field.methodV();
    if (arg.sField.equals("")) {
      return 0;
    } else {
      return 1;
    }
  }
}
It dependencies can be determined as follows (using mete-tools ability to analysis classfiles directly):
java -Dprocessing=Dependencies -Dformat=Text \
     -Devidence=Raw -Dwarnings=None \
     -Dsource=Classfiles -DappID=eg -Dpackages=mete.testing \
     -Xmx1000m -jar mete-tools.jar \
     target/classes/mete/testing/misc/DependenciesEG.class
The result would be a list of all dependencies found in the class, which are listed below (module names are usually listed with their full binary name, but just the classnames are given here for space reasons):

  From From Kind To Type targetID Location locationID Visibility
A DependenciesEG Class OneString Get sField Method method(OneString) Private
B DependenciesEG Class fields.OneString Parameter to whole module Method method(OneString) Public
C DependenciesEG Class MethodV Field to whole module Field field Private
D DependenciesEG Class MethodV InvokeVirtual methodV() Method method(OneString) Private
E DependenciesEG Class DependenciesEG Get field Method method(OneString) Private
F DependenciesEG Class EmptyInterface Implements to whole module Header Public
G DependenciesEG Class EmptyRoot Extends to whole module Header Public
H DependenciesEG Class EmptyRoot InvokeSpecial <init>() Constructor <init>() Private

Points to note: