/helloworld-java-jlink

HelloWorld in Java ☕️ (JLINK)

Primary LanguageJavaApache License 2.0Apache-2.0

Helloworld in Java

This repository shows how to configure GitHub Actions and JReleaser to:

  • compile a helloworld app with bundled Java Runtimes using jlink for:

    • linux_musl-x86_64

    • linux-x86_64

    • linux-aarch_64

    • osx-x86_64

    • osx-aarch_64

    • windows-x86_64

    • windows-aarch_64

  • assemble zip distributions with JReleaser

  • create rolling early-access releases with JReleaser on every push to main branch

Important
JReleaser requires 2 additional inputs that may be set as environment variables, JRELEASER_PROJECT_VERSION and JRELEASER_GITHUB_TOKEN. More information about environment variable configuration may be found in the guide.

There are two modes for packaging this application: classpath & modulepath.

classpath

  1. ./mvnw verify

  2. ./mvnw -Pjdks

  3. jreleaser assemble

modulepath

  1. ./mvnw verify

  2. ./mvnw -Pjdks

  3. jreleaser assemble --config-file jreleaser-modules.yml

In both cases the assembled archive is placed at out/jreleaser/assemble/helloworld/jlink.