Skip to content

Calculator - Java + Maven course template

A complete, tested starting point for a term project: Java 17, Maven, JUnit 5, coverage with JaCoCo and ReportGenerator, API docs with Javadoc and Doxygen, and this site - every report produced on Windows and Linux, every release asset named the same way locally and on GitHub.

Build status Code coverage Documentation coverage Latest release License: AGPL-3.0

Download the latest release Start here: install the tools

Start

  • Guide

    Install, use the template, turn a project topic into your own project, daily workflow, troubleshooting.

    Open the guide

  • English / Türkçe

    The whole site - guides, report pages, downloads - is available in both languages. Use the language switcher in the header.

    Türkçe

  • Show your project without GitHub Pages

    Private repository on GitHub Free? Build and open the full site locally, with the demo checklist.

    Demo checklist

  • Naming standard and site rules

    Script names, folders, release assets, and when a report is framed and when it opens on its own.

    Read the standard

Reports - Windows and Linux, side by side

  • Windows

    Unit tests, coverage (JaCoCo and ReportGenerator), documentation coverage, Doxygen, Javadoc.

    Windows reports

  • Linux (also WSL)

    The same set built on Linux - numbers and rendering can differ slightly.

    Linux reports

  • Which report is which?

    Native tool versus ReportGenerator, and why every report exists twice.

    Explained

  • API docs

    Doxygen and Javadoc, per platform.

    API docs

  • Downloads

    Every release asset: apps, report archives, source, site, checksums.

    Downloads

  • Maven site (native)

    Checkstyle, PMD, CPD, SpotBugs, Surefire, JXR - the Maven-only pages, in their own tab.

    Maven site

The scripts in one table

Same number = same job in every course template; the platform is the suffix (-windows.bat, -linux.sh; WSL is Linux).

# Job Windows Linux / WSL
1 Install the Git hooks 1-configure-git-hooks-windows.bat ./1-configure-git-hooks-linux.sh
3 Install the package manager 3-install-package-manager-windows.bat -
4 Install the tools 4-install-tools-windows.bat ./4-install-tools-linux.sh
5 Format the code 5-format-code-windows.bat ./5-format-code-linux.sh
6 Build + unit tests (fast) 6-build-and-test-windows.bat ./6-build-and-test-linux.sh
7 Everything: reports, API docs, sites, release/ 7-build-all-windows.bat ./7-build-all-linux.sh
8 Run the app 8-run-app-windows.bat ./8-run-app-linux.sh
9 Open the site on http://localhost 9-open-site-windows.bat ./9-open-site-linux.sh
10 Release with the GitHub CLI 10-release-windows.bat ./10-release-linux.sh
11 Clean 11-clean-windows.bat ./11-clean-linux.sh