Java code in the aurora repo is built with Gradle.
You will need Java 7 installed and on your PATH
or unzipped somewhere with JAVA_HOME
set. Then
./gradlew tasks
will bootstrap the build system and show available tasks. This can take a while the first time you run it but subsequent runs will be much faster due to cached artifacts.
Aurora has a comprehensive unit test suite. To run the tests use
./gradlew build
Gradle will only re-run tests when dependencies of them have changed. To force a re-run of all tests use
./gradlew clean build
To speed up development iteration, the plain gradle commands will not run static analysis tools. However, you should run these before posting a review diff, and always run this before pushing a commit to origin/master.
./gradlew build -Pq
Gradle can create a zip file containing Aurora, all of its dependencies, and a launch script with
./gradlew distZip
or a tar file containing the same files with
./gradlew distTar
The output file will be written to dist/distributions/aurora-scheduler.zip
or
dist/distributions/aurora-scheduler.tar
.
Gradle can generate project files for your IDE. To generate an IntelliJ IDEA project run
./gradlew idea
and import the generated aurora.ipr
file.
New dependencies can be added from Maven central by adding a compile
dependency to build.gradle
.
For example, to add a dependency on com.example
's example-lib
1.0 add this block:
compile 'com.example:example-lib:1.0'
NOTE: Anyone thinking about adding a new dependency should first familiarize themself with the Apache Foundation's third-party licensing policy.
Third party JS libraries used in Aurora (located at 3rdparty/javascript/bower_components) are managed by bower, a JS dependency manager. Bower is only required if you plan to add, remove or update JS libraries. Bower can be installed using the following command:
npm install -g bower
Bower depends on node.js and npm. The easiest way to install node on a mac is via brew:
brew install node
For more node.js installation options refer to https://github.com/joyent/node/wiki/Installation.
More info on installing and using bower can be found at: http://bower.io/. Once installed, you can use the following commands to view and modify the bower repo at 3rdparty/javascript/bower_components
bower list
bower install <library name>
bower remove <library name>
bower update <library name>
bower help
The following files were autogenerated by gradle wrapper
using gradle 1.8's
Wrapper plugin and
should not be modified directly:
./gradlew
./gradlew.bat
./gradle/wrapper/gradle-wrapper.jar
./gradle/wrapper/gradle-wrapper.properties
To upgrade Gradle unpack the new version somewhere, run /path/to/new/gradle wrapper
in the
repository root and commit the changed files.