Code Monkey home page Code Monkey logo

usages's Introduction

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

Usage

Use this tool in one of the following ways:

java -jar usages.jar <usage-jar-files>

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.

java -jar usages.jar <usage-jar-files> --api <api-jar-files>

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.

Here and can use wildcard like "lib/*.jar". Use "**" at the last level to scan subdirectories, like "lib/**.jar". Zip files with nested zip and jar files are supported and are recursively analyzed. The "usages.zip" file that is produced by the tool can be used in as a compact source of information about usages. Usages for the classes mentioned in "excludes" property are excluded from analysis.

The following JVM system properties are supported by this tool (their defaults are given):

  • -Dusages=usages.zip
  • -Dapi=api.txt
  • -Dexcludes=java.*,javax.*,javafx.*,sun.*,sunw.*,COM.rsa.*,com.sun.*,com.oracle.*

usages's People

Contributors

gark87 avatar elizarov avatar

Watchers

 avatar James Cloos avatar

Forkers

svlukas

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.