Full name:
net.agilhard.maven.plugins:jlink-jpackager-maven-plugin:1.0.0-SNAPSHOT:jpackager
Description:
Attributes:
Name | Type | Since | Description |
---|---|---|---|
<buildRootPackage> | File | - | Directory in which to use and place temporary files.
--build-root <path> Default value is: ${project.build.directory}/jpackager-build. |
<copyArtifacts> | boolean | - | Flag whether to copy artifact modules to the moduleTempDirectory.
The default value is true. Setting this to false only works if there are no modules with classes in the module hierachy. Default value is: true. |
<moduleTempDirectory> | File | - | TempDirectory where artifact modules are temporarily copied too. Default value is: ${project.build.directory}/jpackager-jmods. |
Name | Type | Since | Description |
---|---|---|---|
<addJDKToLimitModules> | boolean | - | Toggle whether to add all modules in the java boot path to the
limitModules setting. Default value is: false. |
<addModules> | List | - |
Usually this is not necessary, cause this is handled automatically by the given dependencies. By using the --add-modules you can define the root modules to be resolved. The configuration in pom.xml file can look like this: <addModules> <addModule>mod1</addModule> <addModule>first</addModule> . . </addModules> The command line equivalent for jlink is: --add-modules <mod>[,<mod>...]. |
<appImage> | File | - | Location of the predefined application image that is used to build
an installable package.
--app-image <path> |
<appVersion> | String | - | Version of the application.
Note a -SNAPSHOT or .SNAPSHOT is automatically deleted from the version when constructing the jpackage command line arguments. --app-version <version> Default value is: ${project.version}. |
<arguments> | List | - | Command line arguments to pass to the main class if no arguments
are specified by the launcher.
--arguments <args> |
<automaticModulesFolderName> | String | - | Name of the automatic-modules folder Default value is: jar_auto. |
<category> | String | - | Category or group of the application
--category <text> |
<classPathFolderName> | String | - | Name of the classpath folder Default value is: jar. |
<classpathArtifacts> | List | - | Artifacts that should be explicitly on the classpath |
<copyright> | String | - | Copyright for the application.
--copyright <text> |
<description> | String | - | Description of the application.
--description <text> Default value is: ${project.description}. |
<excludedArtifacts> | List | - | Artifacts that should be excluded |
<fileAssociations> | File | - | Properties file that contains list of key=value parameters that
describe a file association. "extension", "mime-type", "icon",
"description" can be used as keys for the association.
--file-associations <path> |
<files> | List | - | List of files in the base directory. If omitted, all files from
"input" directory (which is a mandatory argument in this case) will
be packaged.
--files <files> |
<icon> | File | - | Icon of the application bundle.
--icon <path> |
<identifier> | String | - | Machine readable identifier of the application. The format must be
a DNS name in reverse order, such as com.example.myapplication.
--identifier <identifier> Default value is: ${project.groupId}.${project.artifactId}. |
<ignoreAutomaticModules> | boolean | - | Flag to ignore automatic modules. Default value is: true. |
<installDir> | String | - | Qualified name of the application class to execute.
-install-dir <path> |
<jPacktoolMoveAutomaticModules> | boolean | - | Flag if to move real modules from jpacktool-prepare goal Default value is: true. |
<jPacktoolMoveClassPathJars> | boolean | - | Flag if to move classpath jars from jpacktool-prepare goal Default value is: true. |
<jPacktoolMoveRealModules> | boolean | - | Flag if to move real modules from jpacktool-prepare goal. This can
not be set to true when using jpackager because jpackager
explicitly disallows modules in input directories. Default value is: false. |
<jdkToolchain> | Map | - |
Specify the requirements for this jdk toolchain. This overrules the toolchain selected by the maven-toolchain-plugin. note: requires at least Maven 3.3.1 |
<jvmArgs> | List | - | JVM flags and options to pass to the application.
--jvm-args <args> |
<licenseFile> | String | - | The license file, relative to the base directory.
--license-file <path> |
<limitModules> | List | - | Limit the universe of observable modules. The following gives an
example of the configuration which can be used in the
pom.xml file.
<limitModules> <limitModule>mod1</limitModule> <limitModule>xyz</limitModule> . . </limitModules> This configuration is the equivalent of the command line option: --limit-modules <mod>[,<mod>...] |
<linuxOptions> | JPackagerLinuxOptions | - | Linux Options.
Available subelements of <LinuxOptions> are: bundleName, packageDeps, rpmLicenseType, debMaintainer and linuxType. |
<macOptions> | JPackagerMacOptions | - | Mac Options
Available subelements of <MacOptions> are: sign, bundleName, bundleIdentifier, appStoreCategory, appStoreEntitlements, bundleSigningPrefix, signingKeyUserName, signingKeychain and macType. |
<mainClass> | String | - | Qualified name of the application class to execute.
-class <className> |
<mainJar> | String | - | The main JAR of the application. This JAR should have the
main-class, and is relative to the assembled application directory.
--main-jar<jarname> |
<module> | String | - | Main module of the application. This module must have the
main-class, and be on the module path.
--module <name> |
<modulePaths> | List | - | Include additional paths on the --module-path option.
Project dependencies and JDK modules are automatically added. |
<modulesFolderName> | String | - | Name of the modules folder Default value is: jmods. |
<name> | String | - | Name of the application.
--name <name> Default value is: ${project.name}. |
<packageType> | String | - | Installer type of JPackager operation.
Valid values for <type> are "msi", "rpm", "deb", "dmg", "pkg", "pkg-app-store". If <type> is omitted a value from the platform specific settings <linuxType>, <windowsType> or <macType> is being used. User property is: jlink-jpackager.package-type. |
<packagingResources> | PackagingResources | - | Resources to package into the image or installable package.
You can use almost any configuration option that the Apache Maven Resources Plugin has on this setting. When filtering is set to true on a resource the Freemarker Java Template Engine is being used to filter the contents and some variables set by the packaging process are available to it. Hava a look at the Template Author's Guide for details on how to write templates. |
<resourceDir> | String | - | This argument defines the path (absolute or relative) to the
resource directory which overrides jpackage resources, including
icons, template files or other files. |
<runtimeImage> | File | - | Location of the predefined runtime image that is used to build an
application image and installable package.
--runtime-image <path> |
<secondaryLauncher> | File | - | Properties file that contains a collection of options for a
secondary launcher.
--secondary-launcher <path> |
<skip> | boolean | - | skip plugin execution. Default value is: false. |
<skipModulesInclude> | boolean | - | Skip including of modules. Default value is: false. |
<sourceJdkModules> | File | - | Set the JDK location to create a Java custom runtime image. |
<unfilteredDependencyHandling> | boolean | - | Fall back to using old unfiltered maven dependency handling. Default value is: false. |
<vendor> | String | - | Vendor of the application.
--vendor <text> Default value is: ${project.organization}. |
<verbose> | boolean | - | This will turn on verbose mode.
The jlink/jpackager command line equivalent is: --verbose Default value is: false. |
<windowsOptions> | JPackagerWindowsOptions | - | Windows Options
Available subelements of <WindowsOptions> are: menu, menuGroup, perUserInstall, dirChooser, registryName, upgradeUUID, shortcut, console and windowsType. |
Usually this is not necessary, cause this is handled automatically by the given dependencies.
By using the --add-modules you can define the root modules to be resolved. The configuration in pom.xml file can look like this:
<addModules> <addModule>mod1</addModule> <addModule>first</addModule> . . </addModules>
The command line equivalent for jlink is: --add-modules <mod>[,<mod>...].
--app-image <path>
Note a -SNAPSHOT or .SNAPSHOT is automatically deleted from the version when constructing the jpackage command line arguments.
--app-version <version>
--arguments <args>
--build-root <path>
--category <text>
The default value is true. Setting this to false only works if there are no modules with classes in the module hierachy.
--description <text>
--file-associations <path>
--files <files>
--identifier <identifier>
-install-dir <path>
Specify the requirements for this jdk toolchain. This overrules the toolchain selected by the maven-toolchain-plugin.
note: requires at least Maven 3.3.1--jvm-args <args>
--license-file <path>
<limitModules> <limitModule>mod1</limitModule> <limitModule>xyz</limitModule> . . </limitModules>
This configuration is the equivalent of the command line option: --limit-modules <mod>[,<mod>...]
Available subelements of <LinuxOptions> are: bundleName, packageDeps, rpmLicenseType, debMaintainer and linuxType.
Available subelements of <MacOptions> are: sign, bundleName, bundleIdentifier, appStoreCategory, appStoreEntitlements, bundleSigningPrefix, signingKeyUserName, signingKeychain and macType.
-class <className>
--main-jar<jarname>
--module <name>
--name <name>
Valid values for <type> are "msi", "rpm", "deb", "dmg", "pkg", "pkg-app-store".
If <type> is omitted a value from the platform specific settings <linuxType>, <windowsType> or <macType> is being used.
You can use almost any configuration option that the Apache Maven Resources Plugin has on this setting.
When filtering is set to true on a resource the Freemarker Java Template Engine is being used to filter the contents and some variables set by the packaging process are available to it.
Hava a look at the Template Author's Guide for details on how to write templates.
--runtime-image <path>
--secondary-launcher <path>
--vendor <text>
The jlink/jpackager command line equivalent is: --verbose
Available subelements of <WindowsOptions> are: menu, menuGroup, perUserInstall, dirChooser, registryName, upgradeUUID, shortcut, console and windowsType.