The plugin creates osdetector extension in your project, through which you
can access the following attributes:
osdetector.os: normalized OS name
osdetector.arch: architecture
osdetector.classifier: classifier, which is osdetector.os + '-' + osdetector.arch, e.g., linux-x86_64
osdetector.release: only vailable if osdetector.os is linux.
null on non-linux systems. It provides additional information about the
linux release:
id: the ID for the linux release
version: the version ID for this linux release
isLike(baseRelease): true if this release is a variant of the given
base release. For example, ubuntu is a variant of debian, so on a debian or
ubuntu system isLike('debian`) returns true.
WARNING: DO NOT USE osdetector.classifierWithLikes because it has a
known issue. It
will be either removed or changed to a different form in the next version.
Typical usage example
To have separate artifacts for different operating systems
OS Detector Plugin for Gradle
A Gradle plugin that detects the OS name and architecture, providing a uniform classifier to be used in the names of native artifacts.
It uses os-maven-plugin under the hood thus produces the same result.
Requires Java 8 or up.
Latest version
The latest version
1.7.3is available on Maven Central. Its output is identical toos-maven-plugin:1.7.1.Usage
To use this plugin, include in your build script
For Gradle 2.1 and higher:
For Gradle 1.x and 2.0:
The plugin creates
osdetectorextension in your project, through which you can access the following attributes:osdetector.os: normalized OS nameosdetector.arch: architectureosdetector.classifier: classifier, which isosdetector.os + '-' + osdetector.arch, e.g.,linux-x86_64osdetector.release: only vailable ifosdetector.osislinux.nullon non-linux systems. It provides additional information about the linux release:id: the ID for the linux releaseversion: the version ID for this linux releaseisLike(baseRelease):trueif this release is a variant of the given base release. For example, ubuntu is a variant of debian, so on a debian or ubuntu systemisLike('debian`)returnstrue.WARNING: DO NOT USE
osdetector.classifierWithLikesbecause it has a known issue. It will be either removed or changed to a different form in the next version.Typical usage example
To have separate artifacts for different operating systems
To differentiate between debian-like, redhat-like and
other linux systems
To build and install locally