Skip to content
Gradle plugin for building setups for different platforms.
Java Objective-C Visual Basic Shell
Branch: master
Clone or download
Latest commit 1dda027 Aug 14, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.settings Switch for gradle 4.8+ Nov 12, 2018
native Add jnlp option Aug 2, 2018
scripts Begin restructure for Wrapper Plugin Nov 21, 2018
src prevent executing in /quiet mode on rerun the same installer Aug 7, 2019
testBuilds Path fixes. Nov 22, 2018
.findbugs.xml FindBugs Config. Feb 21, 2018
.gitignore Ignore Feb 20, 2019
.travis.yml oraclejdk8 is not supported anymore Aug 7, 2019
build.gradle Internaltionalized Linux Description and licenses Dec 12, 2018
license.txt license Jan 29, 2016 Update Aug 14, 2019

Gradle Setup Builder Plugin

Build Status License

The Setup Builder is a plugin for Gradle which can create a native setups for different platforms like Windows, Linux and OSX. The output is a *.msi, a *.deb, a *.rpm or a *.dmg file. The target is an installer for Java applications.

System Requirements

Platform Requirement
all Java 8 or higher. Gradle must run with Java 8
Windows Wix Toolset or WixEdit must be installed
Linux Lintian, FakeRoot
on Ubuntu: apt-get install lintian fakeroot
Linux dpkg for creating Debian packages: apt-get install dpkg
Linux rpm for creating RPM packages: apt-get install rpm

Plugin and Gradle Version

Plugin Version Gradle Version
<= 1.5 2.3 - 2.11
1.6 2.12 - 2.13
1.7 2.14
1.8, 3.0.x 3.0
3.1.x 3.1 - 3.3
3.4.x 3.4 - 4.3
4.5.x >= 4.5

There is a file SetupBuilderVersion.gradle to export the required version of SetupBuilder depending on the Gradle version. It can be used to automatically obtain the correct SetupBuilder version.

It can be used as followed:

apply from: ""
plugins {
	id "de.inetsoftware.setupbuilder" version setupBuilderVersion()


The plugin adds the following tasks:

  • msi
  • deb
  • rpm
  • dmg

For more information check the wiki.

Sample Usage

Base Sample

apply from: ""
plugins {
	id "de.inetsoftware.setupbuilder" version setupBuilderVersion()

setupBuilder {
    vendor = 'i-net software'
    application = "SetupBuilder Plugin"
    appIdentifier = "SetupBuilder"
    version = '1.0'
    licenseFile = 'license.txt'
    // icons in different sizes for different usage. you can also use a single *.ico or *.icns file
    icons = ['icon16.png', 'icon32.png', 'icon48.png', 'icon128.png']
    // all files for all platforms
    from( 'source' ) {
        include 'files/*.jar'
    bundleJre = 1.8

msi {
    // files only for the Windows platform
    from( 'windows' ) {
        include 'foo.exe'
        rename { 'bar.exe' }

More samples can be found in the testBuilds folder of the project.

More properties can be found in the sources of setupBuilder, msi, deb, rpm and dmg.

Zip Sample

Create a zip file with the same files define in setupBuilder extension.

setupBuilder {
task zip(type: Zip) {
    with setupBuilder
    doLast {
        artifacts {
            archives zip


Apache License, Version 2.0

You can’t perform that action at this time.