jpackage:jpackage

Full name:

org.panteleyev:jpackage-maven-plugin:1.6.6:jpackage

Description:

Generates application package.

Each plugin parameter defines jpackage option. For detailed information about these options please refer to Packaging Tool User's Guide

Attributes:

  • Requires a Maven project to be executed.
  • The goal is not marked as thread-safe and thus does not support parallel builds.

Optional Parameters

Name Type Since Description
<aboutUrl> String 17 --about-url <url>
<addModules> List<String> 14

--add-modules <module>[,<module>]

<additionalOptions> List<String> -

Additional jpackage options not covered by dedicated plugin parameters.

Example:

<additionalOptions>
    <option>--jlink-options</option>
    <option>--bind-services</option>
</additionalOptions>

<appContentPaths> List<File> 18

--app-content additional-content[,additional-content...]

Example:

<appContentPaths>
    <appContentPath>./docs</appContentPath>
    <appContentPath>./images</appContentPath>
</appContentPaths>

<appImage> File 14

--app-image <path to application image>

<appVersion> String 14 --app-version <version>
Default: ${project.version}
<arguments> List<String> 14 --arguments <main class arguments>
<bindServices> boolean 14

--bind-services

This option is supported by jpackage versions 14 and 15 only.

<copyright> String 14 --copyright <copyright string>
<description> String 14 --description <description string>
<destination> File 14 --dest <destination path>
<fileAssociations> List<File> 14

--file-associations <file association property file>

Each property file is specified by a separate <fileAssociation> parameter.

Example:

<fileAssociations>
    <fileAssociation>src/properties/java.properties</fileAssociation>
    <fileAssociation>src/properties/cpp.properties</fileAssociation>
</fileAssociations>

<icon> File 14 --icon <icon file path>
<input> File 14 --input <input path>
<installDir> String 14 --install-dir <dir path>
<jLinkOptions> List<String> 16

jlink options.

Example:

<jLinkOptions>
    <jLinkOption>--strip-native-commands</jLinkOption>
    <jLinkOption>--strip-debug</jLinkOption>
</jLinkOptions>

<javaOptions> List<String> 14 --java-options <JVM option>
<launcherAsService> boolean 19 --launcher-as-service
<launchers> List<Launcher> 14

--add-launcher <name>=<file>

Application launchers specified by one

<launcher>
    <name>name-of-the-launcher</name>
    <file>/path/to/launcher.properties</file>
</launcher>

element for each launcher.

<licenseFile> File 14 --license-file <license file path>
<linuxAppCategory> String 14 --linux-app-category <category value>
<linuxAppRelease> String 14 --linux-app-release <release value>
<linuxDebMaintainer> String 14 --linux-deb-maintainer <email address>
<linuxMenuGroup> String 14 --linux-menu-group <menu-group-name>
<linuxPackageDeps> boolean 14 --linux-package-deps
<linuxPackageName> String 14 --linux-package-name <package name>
<linuxRpmLicenseType> String 14 --linux-rpm-license-type <type string>
<linuxShortcut> boolean 14 --linux-shortcut
<macAppCategory> String 17 --mac-app-category <category string>
<macAppStore> boolean 17 --mac-app-store
<macBundleSigningPrefix> String 14

--mac-bundle-signing-prefix <prefix string>

This option is supported by jpackage versions 14, 15 and 16 only.

<macDmgContentPaths> List<File> 18

--mac-dmg-content additional-content[,additional-content...]

Example:

<macDmgContentPaths>
    <macDmgContentPath>./docs</macDmgContentPath>
    <macDmgContentPath>./images</macDmgContentPath>
</macDmgContentPaths>

<macEntitlements> File 17 --mac-entitlements <file path>
<macPackageIdentifier> String 14 --mac-package-identifier <ID string>
<macPackageName> String 14 --mac-package-name <name string>
<macPackageSigningPrefix> String 17 --mac-package-signing-prefix <prefix string>
<macSign> boolean 14 --mac-sign
<macSigningKeyUserName> String 14 --mac-signing-key-user-name <team name>
<macSigningKeychain> File 14 --mac-signing-keychain <file path>
<mainClass> String 14 --main-class <class name>
<mainJar> String 14 --main-jar <main jar file>
<module> String 14 --module <module name>[/<main class>]
<modulePaths> List<File> 14

Each module path is specified by a separate <modulePath> parameter.

Example:

<modulePaths>
    <modulePath>target/jmods</modulePath>
</modulePaths>

<name> String 14 --name <name>
Default: ${project.name}
<removeDestination> boolean -

Remove destination directory.

jpackage utility fails if generated binary already exists. In order to work around this behaviour there is plugin boolean option removeDestination. If true plugin will try to delete directory specified by destination. This might be useful to relaunch jpackage task without rebuilding an entire project.

For safety reasons plugin will not process removeDestination if destination points to a location outside of ${project.build.directory}.

<resourceDir> File 14 --resource-dir <resource dir path>
<runtimeImage> File 14 --runtime-image <file path>
<skip> boolean - Skips plugin execution.
Default: false
<temp> File 14 --temp <temp dir path>
<type> ImageType 14

--type <type>

Possible values:

Plugin JPackage
APP_IMAGE app-image
DMG dmg
PKG pkg
EXE exe
MSI msi
DEB deb
<vendor> String 14 --vendor <vendor string>
<verbose> boolean 14 --verbose
<winConsole> boolean 14 --win-console
<winDirChooser> boolean 14 --win-dir-chooser
<winHelpUrl> String 17 --win-help-url <url>
<winMenu> boolean 14 --win-menu
<winMenuGroup> String 14 --win-menu-group <menu group name>
<winPerUserInstall> boolean 14 --win-per-user-install
<winShortcut> boolean 14 --win-shortcut
<winShortcutPrompt> boolean 17 --win-shortcut-prompt
<winUpdateUrl> String 17 --win-update-url <url>
<winUpgradeUuid> String 14 --win-upgrade-uuid <id string>

Parameter Details

<aboutUrl>

--about-url <url>
  • Type: java.lang.String
  • Since: 17
  • Required: No

<addModules>

--add-modules <module>[,<module>]

  • Type: java.util.List<java.lang.String>
  • Since: 14
  • Required: No

<additionalOptions>

Additional jpackage options not covered by dedicated plugin parameters.

Example:

<additionalOptions>
    <option>--jlink-options</option>
    <option>--bind-services</option>
</additionalOptions>

  • Type: java.util.List<java.lang.String>
  • Required: No

<appContentPaths>

--app-content additional-content[,additional-content...]

Example:

<appContentPaths>
    <appContentPath>./docs</appContentPath>
    <appContentPath>./images</appContentPath>
</appContentPaths>

  • Type: java.util.List<java.io.File>
  • Since: 18
  • Required: No

<appImage>

--app-image <path to application image>

  • Type: java.io.File
  • Since: 14
  • Required: No

<appVersion>

--app-version <version>
  • Type: java.lang.String
  • Since: 14
  • Required: No
  • Default: ${project.version}

<arguments>

--arguments <main class arguments>
  • Type: java.util.List<java.lang.String>
  • Since: 14
  • Required: No

<bindServices>

--bind-services

This option is supported by jpackage versions 14 and 15 only.

  • Type: boolean
  • Since: 14
  • Required: No

<copyright>

--copyright <copyright string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<description>

--description <description string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<destination>

--dest <destination path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<fileAssociations>

--file-associations <file association property file>

Each property file is specified by a separate <fileAssociation> parameter.

Example:

<fileAssociations>
    <fileAssociation>src/properties/java.properties</fileAssociation>
    <fileAssociation>src/properties/cpp.properties</fileAssociation>
</fileAssociations>

  • Type: java.util.List<java.io.File>
  • Since: 14
  • Required: No

<icon>

--icon <icon file path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<input>

--input <input path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<installDir>

--install-dir <dir path>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<jLinkOptions>

jlink options.

Example:

<jLinkOptions>
    <jLinkOption>--strip-native-commands</jLinkOption>
    <jLinkOption>--strip-debug</jLinkOption>
</jLinkOptions>

  • Type: java.util.List<java.lang.String>
  • Since: 16
  • Required: No

<javaOptions>

--java-options <JVM option>
  • Type: java.util.List<java.lang.String>
  • Since: 14
  • Required: No

<launcherAsService>

--launcher-as-service
  • Type: boolean
  • Since: 19
  • Required: No

<launchers>

--add-launcher <name>=<file>

Application launchers specified by one

<launcher>
    <name>name-of-the-launcher</name>
    <file>/path/to/launcher.properties</file>
</launcher>

element for each launcher.

  • Type: java.util.List<org.panteleyev.jpackage.Launcher>
  • Since: 14
  • Required: No

<licenseFile>

--license-file <license file path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<linuxAppCategory>

--linux-app-category <category value>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxAppRelease>

--linux-app-release <release value>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxDebMaintainer>

--linux-deb-maintainer <email address>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxMenuGroup>

--linux-menu-group <menu-group-name>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxPackageDeps>

--linux-package-deps
  • Type: boolean
  • Since: 14
  • Required: No

<linuxPackageName>

--linux-package-name <package name>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxRpmLicenseType>

--linux-rpm-license-type <type string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<linuxShortcut>

--linux-shortcut
  • Type: boolean
  • Since: 14
  • Required: No

<macAppCategory>

--mac-app-category <category string>
  • Type: java.lang.String
  • Since: 17
  • Required: No

<macAppStore>

--mac-app-store
  • Type: boolean
  • Since: 17
  • Required: No

<macBundleSigningPrefix>

--mac-bundle-signing-prefix <prefix string>

This option is supported by jpackage versions 14, 15 and 16 only.

  • Type: java.lang.String
  • Since: 14
  • Required: No

<macDmgContentPaths>

--mac-dmg-content additional-content[,additional-content...]

Example:

<macDmgContentPaths>
    <macDmgContentPath>./docs</macDmgContentPath>
    <macDmgContentPath>./images</macDmgContentPath>
</macDmgContentPaths>

  • Type: java.util.List<java.io.File>
  • Since: 18
  • Required: No

<macEntitlements>

--mac-entitlements <file path>
  • Type: java.io.File
  • Since: 17
  • Required: No

<macPackageIdentifier>

--mac-package-identifier <ID string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<macPackageName>

--mac-package-name <name string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<macPackageSigningPrefix>

--mac-package-signing-prefix <prefix string>
  • Type: java.lang.String
  • Since: 17
  • Required: No

<macSign>

--mac-sign
  • Type: boolean
  • Since: 14
  • Required: No

<macSigningKeyUserName>

--mac-signing-key-user-name <team name>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<macSigningKeychain>

--mac-signing-keychain <file path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<mainClass>

--main-class <class name>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<mainJar>

--main-jar <main jar file>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<module>

--module <module name>[/<main class>]
  • Type: java.lang.String
  • Since: 14
  • Required: No

<modulePaths>

Each module path is specified by a separate <modulePath> parameter.

Example:

<modulePaths>
    <modulePath>target/jmods</modulePath>
</modulePaths>

  • Type: java.util.List<java.io.File>
  • Since: 14
  • Required: No

<name>

--name <name>
  • Type: java.lang.String
  • Since: 14
  • Required: No
  • Default: ${project.name}

<removeDestination>

Remove destination directory.

jpackage utility fails if generated binary already exists. In order to work around this behaviour there is plugin boolean option removeDestination. If true plugin will try to delete directory specified by destination. This might be useful to relaunch jpackage task without rebuilding an entire project.

For safety reasons plugin will not process removeDestination if destination points to a location outside of ${project.build.directory}.

  • Type: boolean
  • Required: No

<resourceDir>

--resource-dir <resource dir path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<runtimeImage>

--runtime-image <file path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<skip>

Skips plugin execution.
  • Type: boolean
  • Required: No
  • Default: false

<temp>

--temp <temp dir path>
  • Type: java.io.File
  • Since: 14
  • Required: No

<type>

--type <type>

Possible values:

Plugin JPackage
APP_IMAGE app-image
DMG dmg
PKG pkg
EXE exe
MSI msi
DEB deb
  • Type: org.panteleyev.jpackage.ImageType
  • Since: 14
  • Required: No

<vendor>

--vendor <vendor string>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<verbose>

--verbose
  • Type: boolean
  • Since: 14
  • Required: No

<winConsole>

--win-console
  • Type: boolean
  • Since: 14
  • Required: No

<winDirChooser>

--win-dir-chooser
  • Type: boolean
  • Since: 14
  • Required: No

<winHelpUrl>

--win-help-url <url>
  • Type: java.lang.String
  • Since: 17
  • Required: No

<winMenu>

--win-menu
  • Type: boolean
  • Since: 14
  • Required: No

<winMenuGroup>

--win-menu-group <menu group name>
  • Type: java.lang.String
  • Since: 14
  • Required: No

<winPerUserInstall>

--win-per-user-install
  • Type: boolean
  • Since: 14
  • Required: No

<winShortcut>

--win-shortcut
  • Type: boolean
  • Since: 14
  • Required: No

<winShortcutPrompt>

--win-shortcut-prompt
  • Type: boolean
  • Since: 17
  • Required: No

<winUpdateUrl>

--win-update-url <url>
  • Type: java.lang.String
  • Since: 17
  • Required: No

<winUpgradeUuid>

--win-upgrade-uuid <id string>
  • Type: java.lang.String
  • Since: 14
  • Required: No