The official page for the Revilo (ruh-VEE-low) Task Scheduler Project!
Revilo Task Scheduler takes in a graph file (.dot or .gxl) and outputs a DOT file with an optimal schedule.
java -jar scheduler.jar [INPUT.DOT] [NUM-OF-PROCESSORS] [OPTIONAL ARGS]
The first two (2) arguments (input file and processor count) are required. The output file will be created in the same directory. Optional arguments are as followed:
-v
Enables GUI visualization with live statistics and schedule updating.-o [FILENAME]
Specifies the output file's name.-p [THREADS]
Specifies the number of threads Revilo should be run on.
By default, Revilo will be run sequentially with no visualization.
ParallelTask and incompatible JavaFX versions will output a few lines to console, but do not affect the functionality of Revilo.
On Canvas, the submitted file is called scheduler-1.jar
as the basic milestone submission was called schedular.jar
.
Meeting minutes, plans, research, and other administrivia can be found in the Revilo Wiki.
Issue tracking is mainly done through the Issues tab.
Shared Google Drive folder for resources: Revilo Project Folder
For developers, please only merge branches if they pass the unit tests on the build server!
Name | UPI | Uni ID | GitHub |
---|---|---|---|
Abby Shen | ashe848 | 269481021 | ashe848 |
Aimee Tagle | atag549 | 8194348 | abtagle |
Mohan Cao | mcao024 | 820512142 | mohan-cao |
Michael Kemp | mkem114 | 6273632 | mkem114 |
Terran Kroft | tkro003 | 6869815 | itemic |
Clone the project anywhere
git clone git@github.com:mohan-cao/revilo.git
Using IntelliJ IDEA:
- Import project as Maven project
- Wait for IntelliJ to fetch the required resources
- Yay!
Using Eclipse (Start from Eclipse instead of importing clone!):
- Right click the left-hand side package explorer (where you have projects and stuff)
- Go to Import... > Git > Clone from repository
- If ssh not set up: clone with HTTPS
https://github.com/mohan-cao/revilo.git
- Set up as new project using Project Wizard
- Name it "revilo"
- Right click project > Configure > Convert into Maven project
- Done!
mvn clean
- Cleans project (start from scratch)
mvn clean test
- Run unit test (from scratch)
mvn test
- Run unit tests
mvn build
- Builds your project. Good enough for most cases
mvn package
- Package classes into a jar. JAR is executable.
mvn install
- Do all the above and install the package
- IntelliJ Preferences/Editor/File and Code Templates -> Add a new template named PTJava Class with extension ptjava. Paste in
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
public class ${NAME} {
}
- IntelliJ Preferences/Editor/File Types -> Select "Java Source"
- Add an association to *.ptjava (so that code autocompletion still works)
- When you run
mvn build
,mvn process-sources
or any compile lifecycle, then .ptjava files are automatically preprocessed into equivalent .java files
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>
Self explanatory installation of local jar to local Maven repo. Hard to remember so I put it here.