Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

javafx-maven-plugin/javafx-maven-plugin

Repository files navigation

Maven Central

JavaFX Maven Plugin

The JavaFX Maven Plugin provides a way to assemble distribution bundles for JavaFX applications (8+) 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 the old configurator: https://zenjava.net/javafx-maven-plugin/

Requirements

  • Maven 3.5 (older versions might work too)
  • Java Developer Kit 8 with at least Update 40 (does NOT support JKD9 or later yet)

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.10.0 (???-???-2021)

New:

  • added a way to have PKCS11 signing by setting <skipKeypassWhileSigning>true</skipKeypassWhileSigning> and <skipKeyStoreChecking>true</skipKeyStoreChecking>, makes it possible to have hardware tokens
  • added ability to prefix dependencies with their groupId by setting <prefixWithGroupIdForClasspathDependencies>true</prefixWithGroupIdForClasspathDependencies>, should work around the edge-case where dependencies have the same artifactId and would overwrite otherwise

Enhancement:

  • JDK 9 compatibility (got broken with Jigsaw)
  • TravisCI: use newer build machines

Documentation:

  • clarified that this plugin is a wrapper, thanks to @TurekBot
Morty Proxy This is a proxified and sanitized view of the page, visit original site.