1 The code of BlogBuilder is written in Java. In the code several features of Java 8 are used, therefore an up to date installation of Java 8 is required for development and building. Compatibility with Java 9 was not yet tested, so Java 8 is still recommended. 2 3 4 # Building 5 [Gradle](https://gradle.org/) is used as build system. If Gradle is set up correctly, simply run 6 7 gradle jar 8 9 in the repository root to build the executable *BlogBuilder.jar* in the `build/libs` directory. During the build process Gradle will take care of everything, including fetching the required dependencies. 10 11 12 # Code quality 13 To ensure a reasonable standard of code quality, several well-known testing utilities are used. For each utility there is a Gradle task: 14 15 * [FindBugs](http://findbugs.sourceforge.net/): run `gradle findbugsMain` 16 * [PMD](https://pmd.github.io/) (see *build.gradle* for the used rule sets): run `gradle pmdMain` 17 * [Checkstyle](http://checkstyle.sourceforge.net/) with a rule set based on the [Google Style Guide](https://google.github.io/styleguide/javaguide.html): run `gradle checkstyleMain` 18 19 When these tests are run, HTML reports with the test results are created in the `build/reports` directory. 20 21 Unit tests with JUnit are planned for the future, but not yet available. 22 23 24 # Documentation 25 The general/user documentation (a.k.a. the handbook) is located in this Wiki. 26 27 The source code is documented with Javadoc comments (and additional comments where it is necessary). The Gradle task *javadocFull* creates the full documentation in `build/docs/javadoc` 28 29 All changes since the first public release are tracked in the [CHANGELOG.md](https://github.com/tortlepp/BlogBuilder/blob/master/CHANGELOG.md).