jmod:create
Full name:
org.apache.maven.plugins:maven-jmod-plugin:3.0.0:create
Description:
The create goal is intended to create jmod files which can be used for later linking via maven-jlink-plugin. The jmod files can not be used as usual dependencies on the classpath only in relationship with maven-jlink-plugin.
Attributes:
- Requires a Maven project to be executed.
- Requires dependency resolution of artifacts in scope:
runtime. - The goal is not marked as thread-safe and thus does not support parallel builds.
- Binds by default to the lifecycle phase:
package.
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<cmds> |
List<String> |
- |
Specifies one or more directories containing native commands to be copied. The given directories are relative to the current base directory. If no entry is defined the default is src/main/cmds used.
<cmds> <cmd>...</cmd> <cmd>...</cmd> . . </cmds> All files from those directories will be copied into the resulting directory JMod command line equivalent: --cmds <path>. |
<configs> |
List<String> |
- |
Specifies one or more directories containing configuration files to be copied. Location of user-editable config files. If no configuration is given the src/main/configs location is used as default. If this directory does not exist the whole will be ignored.
<configs> <config>...</config> <config>...</config> . . </configs> All files from those directories will be copied into the resulting directory --config <path>. |
<doNotResolveByDefault> |
boolean |
- |
--do-not-resolve-by-default Exclude from the default root set of modulesDefault: false |
<excludes> |
List<String> |
- |
Exclude files matching the pattern list. Each element using one the following forms: <glob-pattern>, glob:<glob-pattern> or regex:<regex-pattern>
<excludes> <exclude>...</exclude> <exclude>...</exclude> . . </excludes> |
<headerFiles> |
List<String> |
- |
Define the locations of header files. The default location is src/main/headerfiles. If the the default location does not exist in the current project it will be ignored. The given directories are relative to the project base directory. If an entry is defined the definition of all locations is needed.
<headerFiles> <headerFile>...</headerFile> <headerFile>...</headerFile> . . </headerFiles> All files from those directories will be copied into the resulting directory --header-files <path> |
<jdkToolchain> |
Map<String,String> |
- |
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 |
<legalNotices> |
List<String> |
- |
Define the location of legal notices. The default location is src/main/legalnotices. The given man pages locations are relative to the project base directory.
<legalNotices> <legalNotice>...</legalNotice> <legalNotice>...</legalNotice> . . </legalNotices> All files from those directories will be copied into the resulting directory --legal-notices <path> |
<libs> |
List<String> |
- |
Specifies one or more directories containing native libraries to be copied (The given directories are relative to project base directory). If no configuration is given in <src/main/libs will be used. If the default location does not exist the whole configuration will be ignored.
<libs> <lib>...</lib> <lib>...</lib> . . </libs> All files from those directories will be copied into the resulting directory |
<mainClass> |
String |
- |
Define the main class which is recorded in the module-info.class file. |
<manPages> |
List<String> |
- |
Define the locations of man pages. The default location is src/main/manpages. The given man pages locations are relative to the project base directory.
<manPages> <manPage>...</manPage> <manPage>...</manPage> . . </manPages> All files from those directories will be copied into the resulting directory --man-pages <path> |
<moduleVersion> |
String |
- |
Define the module version of the jmod file. Default: ${project.version} |
<targetPlatform> |
String |
- |
--target-platform <target-platform> Target platform TODO: Which values are valid? |
<warnIfResolved> |
String |
- |
Hint for a tool to issue a warning if the module is resolved. The valid values are:
|
Parameter Details
<cmds>
src/main/cmds used.
<cmds> <cmd>...</cmd> <cmd>...</cmd> . . </cmds>
All files from those directories will be copied into the resulting directory bin within the jmod file.
JMod command line equivalent: --cmds <path>.- Type:
java.util.List<java.lang.String> - Required:
No
<configs>
src/main/configs location is used as default. If this directory does not exist the whole will be ignored.
<configs> <config>...</config> <config>...</config> . . </configs>
All files from those directories will be copied into the resulting directory config within the jmod file.
--config <path>.- Type:
java.util.List<java.lang.String> - Required:
No
<doNotResolveByDefault>
--do-not-resolve-by-default Exclude from the default root set of modules- Type:
boolean - Required:
No - Default:
false
<excludes>
<excludes> <exclude>...</exclude> <exclude>...</exclude> . . </excludes>
- Type:
java.util.List<java.lang.String> - Required:
No
<headerFiles>
src/main/headerfiles. If the the default location does not exist in the current project it will be ignored. The given directories are relative to the project base directory. If an entry is defined the definition of all locations is needed.
<headerFiles> <headerFile>...</headerFile> <headerFile>...</headerFile> . . </headerFiles>
All files from those directories will be copied into the resulting directory includes within the jmod file.
--header-files <path>- Type:
java.util.List<java.lang.String> - Required:
No
<jdkToolchain>
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- Type:
java.util.Map<java.lang.String, java.lang.String> - Required:
No
<legalNotices>
src/main/legalnotices. The given man pages locations are relative to the project base directory.
<legalNotices> <legalNotice>...</legalNotice> <legalNotice>...</legalNotice> . . </legalNotices>
All files from those directories will be copied into the resulting directory legal within the jmod file.
--legal-notices <path>- Type:
java.util.List<java.lang.String> - Required:
No
<libs>
src/main/libs will be used. If the default location does not exist the whole configuration will be ignored.
<libs> <lib>...</lib> <lib>...</lib> . . </libs>
All files from those directories will be copied into the resulting directory lib within the jmod file.
- Type:
java.util.List<java.lang.String> - Required:
No
<mainClass>
module-info.class file.- Type:
java.lang.String - Required:
No
<manPages>
src/main/manpages. The given man pages locations are relative to the project base directory.
<manPages> <manPage>...</manPage> <manPage>...</manPage> . . </manPages>
All files from those directories will be copied into the resulting directory man within the jmod file.
--man-pages <path>- Type:
java.util.List<java.lang.String> - Required:
No
<moduleVersion>
- Type:
java.lang.String - Required:
No - Default:
${project.version}
<targetPlatform>
--target-platform <target-platform> Target platform TODO: Which values are valid?- Type:
java.lang.String - Required:
No
<warnIfResolved>
- deprecated
- deprecated-for-removal
- incubating
- Type:
java.lang.String - Required:
No


