Skip to content

turing85/advent-of-code-2022

Repository files navigation

Prerequisites

To compile and run the project, JDK in version 17+ is required.

Daily Challenges as Independent Modules

Each daily challenge is implemented as separate maven module. This leads to some code duplication, but guarantees that the modules are independent. The challenges are not only maven-modules, but java-modules as well.

Build

To build all challenges and execute the tests, we run the following command:

Listing 1. Build project (Linux)
./mvnw clean package
Listing 2. Build project (Windows)
mvnw.cmd clean package

We can build a specific challenge by just building the corresponding maven submodule, e.g.:

Listing 3. Build specific challenge (Linux)
./mvnw --projects day-25 clean package
Listing 4. Build specific challenge (Windows)
mvnw.cmd --projects day-25 clean package

Executing the package target generates some documentation for each challenge. For example, test coverage reports can be found in <module-name>/target/jacoco/index.html

Generate Documentation

The repository supports generating documentation by executing

Listing 5. Generate documentation (Linux)
./mvnw --define skipTests --define disable-formatter site
Listing 6. Generate documentation (Windows)
mvnw.cmd --define skipTests --define disable-formatter site

The generated documentation can then be found under target/staging/index.html.

Notice that we have to build the project first (Linux, windows), otherwise the documentation will be incomplete.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Marco Bungart
Marco Bungart

💻 🚧 🚇

This project follows the all-contributors specification. Contributions of any kind welcome!

About

These are my implementation of the Advent of code 2022.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages