Skip to content

ros3cin/CTplus

Repository files navigation

Using the tool

Please, refer to the releases section of GitHub and download the lastest version.

If you play to contribute to the project you will need:

  1. The Scala IDE 2.12.3 (http://scala-ide.org/download/current.html)
  2. Import the project as a Maven project

To generate the output jar, do:

  1. mvn clean package

JAR usage:

Usage: <main class> [-ahpr] [--analysis-output-file=<analysisOutputFile>]
                    [--energy-profile-file=<energyProfileFile>]
                    [--points-to-analysis-file=<pointsToAnalysisFile>]
                    [--recommendation-output-file=<recommendationOutputFile>]
                    [-e=<exclusions>] [-t=<target>]
                    [--packages=<packages>...]...
      --analysis-output-file=<analysisOutputFile>
                             The name of the analysis output file. Defaults to
                               analysis.csv
      --energy-profile-file=<energyProfileFile>
                             The energy profile file to be used on the recommender
      --packages=<packages>...
                             Space separated packages to include in the scope of the
                               analysis
      --points-to-analysis-file=<pointsToAnalysisFile>
                             The points-to-analysis output file
      --recommendation-output-file=<recommendationOutputFile>
                             The name of the recommendation output file. Defaults to
                               recommendations.csv
  -a, --analyze              Run the analysis
  -e, --exclusions-file=<exclusions>
                             The path to the scope exclusion file
  -h, --help                 Displays this help
  -p, --points-to-analysis   If set, runs the points-to-analysis on the target
  -r, --recommend            Run the recommendation
  -t, --target=<target>      The target JAR or APK, this is required if the analyze
                               flag is set

Example usages:

Simple analysis of a jar

# Analyzing my.jar scoping the com.my.package
java -jar CECOtool-analyzer.jar --analyze --target "/path/to/my.jar" --packages com.my.package com.my.package.two --analysis-output-file "my-jar-analysis.csv"

Recommending for the my-jar-analysis.csv

# Recommending for the my-jar-analysis.csv using a energy-profile.csv, generated by the CECOTool profiler
java -jar CECOtool-analyzer.jar --recommend --analysis-output-file "my-jar-analysis.csv" --energy-profile-file "path/to/my/energy-profile.csv"

Error reporting

If you encounter any errors while using this tool, please open an issue and append the logs/app.log file. In case you find any analysis inconsistency, also open an issue describing the problem and your thought of a correct behavior.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published