A tool for detection and visualization of code smells for object-oriented languages.
- Golan Hassin
- Visakan Kirubakaran
- Sabin Plaiasu
- Martin Rivard
- Kshitij Sawhney
Make sure that the following prerequisites are successfully installed on your machine:
- Java - Download & Install Java. Download Java based on your operating system.
- Maven - Download & Install Maven. Choosing the latest version will suffice.
- Python - Download & Install Python. Python 3.7+ is required.
- Joern - Please see the joern repository for more details on installing joern.
- GraphViz - (graphviz.org) Used to generate layout program
dot, joern, python must be part of your system PATH variable to use this program.
Ensure the relevant environment variables are set properly:
export JAVA_HOME=/usr/lib/jvm/default-java/MAVEN_HOME
Run the following command to clean and package the project:
mvn clean packageBuild the project files with Maven:
mvn installIn order to execute the main program via the terminal, run the following:
mvn clean javafx:runIn order to run the program through the executable jar via the terminal, the following command can be used:
java -jar ./target/CodeSmell-1.0-SNAPSHOT-shaded.jarTo do this, the dependencies (JavaFX) must be copied into the ./target/dist/lib folder.
Run the following command to execute all of the tests:
mvn testIn order to skip invoking joern (which can take a sagnificant amount of time on older hardware), pass the command line argument to skip joern through maven like so
mvn -Dskip=true javafx:run