Usages is a Java API usage analyzer.
Usages Analysis Tool
This tool analyzes dependencies between Java classes. It scans ".class" files and analyzes all kinds of dependencies: usages of fields, usages of methods, extension of classes and implementation of interfaces, usages of annotations, overrides of methods. It is designed to gather and combine usages information from a number of projects and then use this collected usages information while refactoring libraries that are being used in those projects. Deprecated members that are safe to remove from the library can be automatically identified by the tool.
More infomration can be found on the project homepage: https://code.devexperts.com/display/USAGES/usages
Use this tool in one of the following ways:
Analyzes jar files looking for all members of other classes that use used from there. The results of this analysis are written to "usages.zip" file. This archive contains human-readable ".usages" files that capture detailed information about usages.
Analyzes all jar files looking for deprecated members of api jar files that are used from outside of them. The results of this analysis are written to "api.txt" file.
The following JVM system properties are supported by this tool (their defaults are given):