mirror of
https://github.com/jlengrand/jreleaser.github.io.git
synced 2026-03-10 08:31:25 +00:00
51 lines
2.4 KiB
Plaintext
51 lines
2.4 KiB
Plaintext
= JReleaser
|
|
|
|
JReleaser is a release automation tool for Java projects. Its goal is to simplify creating releases and publishing artifacts
|
|
to multiple package managers while providing customizable options.
|
|
|
|
== What it does
|
|
|
|
JReleaser takes inputs from popular builds tools (Ant, Maven, Gradle) such as JAR files, binary distributions
|
|
(`.zip`, `.tar`), JLink images, or any other file that you'd like to publish as a Git release on popular Git services
|
|
such as GitHub, GitLab, or Gitea. Distribution files can additionally be published to be consumed by popular package managers
|
|
as Homebrew, Snapcraft, Scoop, or get ready to be launched via Jbang. Releases may be announced in a variety of channels such
|
|
as Twitter, Zulip, SdkMan!, and others. Have a look at the listed xref:integrations.adoc[integrations].
|
|
|
|
image::jreleaser-tools.png[]
|
|
|
|
== How does it work
|
|
|
|
A release process can be customized with a `jreleaser.[yml|toml|json]` file if using the xref:tools:jreleaser-cli.adoc[CLI] or
|
|
xref:tools:jreleaser-ant.adoc[Ant] options, or direct DSL configuration inside a `pom.xml` (xref:tools:jreleaser-maven.adoc[Maven]) or
|
|
`build.gradle` (xref:tools:jreleaser-gradle.adoc[Gradle]) file.
|
|
|
|
Once setup, you can create a new release by invoking the `full-release` command.
|
|
|
|
Every step of the release process is configurable. Inputs may be parameterized externally; several input files may be
|
|
provided as templates.
|
|
|
|
== Where does it run
|
|
|
|
You can run JReleaser at your local development machine or at any of the following CI/CD solutions:
|
|
xref:continuous-integration:buddy.adoc[], xref:continuous-integration:buildkite.adoc[],
|
|
xref:continuous-integration:circle-ci.adoc[], xref:continuous-integration:cirrus-ci.adoc[],
|
|
xref:continuous-integration:codefresh.adoc[], xref:continuous-integration:codeship.adoc[],
|
|
xref:continuous-integration:drone.adoc[], xref:continuous-integration:github-actions.adoc[],
|
|
xref:continuous-integration:gitlab-ci.adoc[], xref:continuous-integration:jenkins.adoc[],
|
|
xref:continuous-integration:teamcity.adoc[], xref:continuous-integration:travis-ci.adoc[].
|
|
More to come in the future.
|
|
|
|
== How it looks
|
|
|
|
A (moving) picture is worth a thousand words
|
|
|
|
++++
|
|
<script id="asciicast-409271" src="https://asciinema.org/a/409271.js" async></script>
|
|
++++
|
|
|
|
== Acknowledgments
|
|
|
|
JReleaser is heavily inspired by link:https://goreleaser.com[GoReleaser], it also builds on top of the lessons learned
|
|
from link:github.com/jbangdev/jbang[jbang]'s build setup.
|
|
|