Maven plugin for JavaFX
Clone or download
Latest commit 976875e Mar 20, 2018

README.md

Travis Build Status AppVeyor Build status Maven Central Dependency Status

JavaFX Maven Plugin

The JavaFX Maven Plugin provides a way to assemble distribution bundles for JavaFX applications (8+ and 9+) from within Maven.

This plugin is essentially a Maven wrapper for the packaging tool that comes with JavaFX, it's called javapackager.

For easy configuration please use our new website (which needs to get updated/reworked again): http://javafx-maven-plugin.github.io

Requirements

  • Maven 3.5 (older versions might work too)
  • Java Developer Kit 8 with at least Update 40

OS-specific requirements

  • (Windows) EXE installers: Inno Setup
  • (Windows) MSI installers: WiX (at least version 3.7)
  • (Linux) DEB installers: dpkg-deb
  • (Linux) RPM installers: rpmbuild
  • (Mac) DMG installers: hdiutil
  • (Mac) PKG installers: pkgbuild

Quickstart for JavaFX JAR

Add this to your pom.xml within to your build-plugin:

<plugin>
    <groupId>com.zenjava</groupId>
    <artifactId>javafx-maven-plugin</artifactId>
    <version>8.8.3</version>
    <configuration>
        <mainClass>your.package.with.Launcher</mainClass>
    </configuration>
</plugin>

To create your executable file with JavaFX-magic, call mvn jfx:jar. The jar-file will be placed at target/jfx/app.

Quickstart for JavaFX native bundle

Add this to your pom.xml within to your build-plugin:

<plugin>
    <groupId>com.zenjava</groupId>
    <artifactId>javafx-maven-plugin</artifactId>
    <version>8.8.3</version>
    <configuration>
        <vendor>YourCompany</vendor>
        <mainClass>your.package.with.Launcher</mainClass>
    </configuration>
</plugin>

To create your executable file with JavaFX-magic and some installers (please see official oracle-documentation which applications are required for this), call mvn jfx:native. The native launchers or installers will be placed at target/jfx/native.

Using SNAPSHOT-versions

When you report a bug and this got worked around, you might be able to have access to some -SNAPSHOT-version, please adjust your pom.xml:

<pluginRepositories>
    <pluginRepository>
        <id>oss-sonatype-snapshots</id>
        <url>https://oss.sonatype.org/content/groups/public/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </pluginRepository>
</pluginRepositories>

Last Release Notes

Version 8.8.3 (09-feb-2017)

Bugfixes:

(Not yet) Release(d) Notes

upcoming Version 8.9.0 (???-jan-2018)

New:

  • added a way to have PKCS11 signing by setting <skipKeypassWhileSigning>true</skipKeypassWhileSigning> and <skipKeyStoreChecking>true</skipKeyStoreChecking>, makes it possible to have hardware tokens

Enhancement:

  • JDK 9 compatibility
  • TravisCI: use newer build machines

Documentation:

  • clarified that this plugin is a wrapper, thanks to @TurekBot