Project Minerva for Modernization is a set of libraries to analyze Java applications using AI and provide recommendations for refactoring them into partitions, which can be starting points for microservices. This binary analyzer component enables the static analysis of Java application code in order to collect data for AI refactoring consideration.
mvn install
docker build -t minerva-analyzer .
docker run --rm -it -v [target dir]:/var/install minerva-analyzer
java -classpath minerva-analyzer-1.0.jar com.ibm.minerva.analyzer.Analyzer [archive path] [output dir] {optional package exclusion list; comma separated}
The supported archives include .jar, .war, .ear, .zip and .rar.
e.g. java -classpath minerva-analyzer-1.0.jar com.ibm.minerva.analyzer.Analyzer /c/daytrader.ear /c/analyzer-data
The above command line invocation would analyze /c/daytrader.ear and write output to /c/analyzer-data.
e.g. java -classpath minerva-analyzer-1.0.jar com.ibm.minerva.analyzer.Analyzer /c/petstore.war /c/analyzer-data javax,org.apache
The above command line invocation would analyze /c/petstore.war (excluding all classes found within javax and org.apache) and write output to /c/analyzer-data.