#Build instructions for Kerby
-------------
###Requirements:
* JDK 1.8+
* Maven 3.2.0 or later
* Internet connection for first build (to fetch all Maven and Kerby dependencies)

###Where to run Maven from?

It should be run at the top directory of Kerby.

###Maven build goals:

* Clean         : mvn clean
* Compile       : mvn compile
* Run tests     : mvn test
* Create JAR    : mvn package
* Install JAR in M2 cache   : mvn install
* Deploy JAR to Maven repo  : mvn deploy
* Build distribution        : mvn package [-Pdist]
* Run findbugs   : mvn compile findbugs:findbugs
* Run benchmarks : mvn integration-test -Pbenchmark

###Build options:

* To run findbugs without running tests : mvn clean package -DskipTests findbugs:findbugs [site]
* Building distributions without running tests : mvn package -Pdist -DskipTests
  (tar package in /kerby/kerby-dist/kdc-dist/target/ & /kerby/kerby-dist/tool-dist/target/)
* Generate javadoc without running tests: mvn clean package -DskipTests javadoc:javadoc
* Checkstyle & PMD checks are run by default. To build quickly and prevent them from running,
  add option [-Pnochecks], for example, mvn package -Pnochecks
* All backends are built by default. To skip most of the backends, and just build the json backend,
  add option [-PskipBackends], for example, mvn package -PskipBackends.
