jGuru Codestyle; Kotlin and Maven development parents and build reactor structure
Put simply - the codestyle project contains all those settings and configurations which makes your development, deployment and runtime execution just work. The jGuru Codestyle project contains a implemented set of best-pracises to start projects quickly - and scale those projects without needing to change your development and delivery process. This is in part usability engineering for the development process, and in part a lot of experience in software development ... all in one repo.
The Codestyle repository defines how to build the build. For kotlin projects, simply use the various parents as parent within the projects within your other repositories. A typical repository structure is shown in the image below:
The jguru-codestyle
is a normal Git-based Maven project, which is simple to clone and quick to build.
Clone the repository, and fetch all tags:
git clone https://github.com/lennartj/jguru-codestyle.git
cd jguru-codestyle
git fetch --tags
jguru-codestyle
projectFor the latest development build, simply run the build against the latest master branch revision:
mvn clean install
For a particular version, checkout its release tag and build normally:
git checkout jguru-codestyle-1.2.4
mvn clean install
All tags (and hence also all release versions) are visible using the command
git tag -l
For building the project with another Maven version, simply run the following
script, where the ${MAVEN_VERSION}
should be substituted for a version number
such as 3.3.3
:
mvn -N io.takari:maven:wrapper -Dmaven=${MAVEN_VERSION}
./mvnw --show-version --errors --batch-mode validate dependency:go-offline
./mvnw --show-version --errors --batch-mode clean verify site
In the windows operating system, use mvnw.bat
instead.