Full name:

io.earcam.maven.plugin:io.earcam.maven.plugin.jigsaw:0.0.4:generate

Description:

Generate module-info.class and/or module-info.java

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: compile.
  • Binds by default to the lifecycle phase: prepare-package.

Required Parameters

Name Type Since Description
<moduleName> String - Defaults to the property ${project.artifactId}.
Default value is: ${project.artifactId}.
<moduleVersion> String - Defaults to the property ${project.version}.
Default value is: ${project.version}.
<targetFile> File - The module-info.class file. Default value is recommended; module-info.class must appear in the root of the JAR, with the exception of Multi-Release JARs.
Default value is: ${project.build.outputDirectory}/module-info.class.
User property is: targetFile.

Optional Parameters

Name Type Since Description
<addMetaInfServices> boolean - Add provides clauses to the module-info definition for entries found in META-INF/services.
Default value is: true.
User property is: addMetaInfServices.
<exports> Export[] - By default, nothing is exported. An export clause has fields packageRegex and to, where the later is CSV of module names.
                <exports>
                        <export>
                                <packageRegex>com\.acme\.api\..*</packageRegex>
                        </export>
                        <export>
                                <packageRegex>com\.acme\.a\..*</packageRegex>
                                <to>
                                        com.acme.b,
                                        com.acme.c,
                                        com.acme.d
                                </to>
                        </export>
                </exports>

<generatedSourceDirectory> File - (Directory) Where to place the module-info.java source file.
<opens> Export[] - By default, nothing is opened. An open clause has fields packageRegex and to, where the later is CSV of module names.
                <opens>
                        <open>
                                <packageRegex>com\.acme\.api\..*</packageRegex>
                        </open>
                        <open>
                                <packageRegex>com\.acme\.a\..*</packageRegex>
                                <to>
                                        com.acme.b,
                                        com.acme.c,
                                        com.acme.d
                                </to>
                        </open>
                </opens>

<skip> boolean - Skip execution of this plugin
Default value is: false.
User property is: skip.
<uses> List - Manually specify any module uses clauses
<verbose> boolean - Log more information from this plugin (debug-level messages promoted to info-level)
Default value is: false.
User property is: verbose.

Parameter Details

<addMetaInfServices>

Add provides clauses to the module-info definition for entries found in META-INF/services.
  • Type: boolean
  • Required: No
  • User Property: addMetaInfServices
  • Default: true

<exports>

By default, nothing is exported. An export clause has fields packageRegex and to, where the later is CSV of module names.
                <exports>
                        <export>
                                <packageRegex>com\.acme\.api\..*</packageRegex>
                        </export>
                        <export>
                                <packageRegex>com\.acme\.a\..*</packageRegex>
                                <to>
                                        com.acme.b,
                                        com.acme.c,
                                        com.acme.d
                                </to>
                        </export>
                </exports>
  • Type: io.earcam.maven.plugin.jigsaw.Export[]
  • Required: No

<generatedSourceDirectory>

(Directory) Where to place the module-info.java source file.
  • Type: java.io.File
  • Required: No

<moduleName>

Defaults to the property ${project.artifactId}.
  • Type: java.lang.String
  • Required: Yes
  • Default: ${project.artifactId}

<moduleVersion>

Defaults to the property ${project.version}.
  • Type: java.lang.String
  • Required: Yes
  • Default: ${project.version}

<opens>

By default, nothing is opened. An open clause has fields packageRegex and to, where the later is CSV of module names.
                <opens>
                        <open>
                                <packageRegex>com\.acme\.api\..*</packageRegex>
                        </open>
                        <open>
                                <packageRegex>com\.acme\.a\..*</packageRegex>
                                <to>
                                        com.acme.b,
                                        com.acme.c,
                                        com.acme.d
                                </to>
                        </open>
                </opens>
  • Type: io.earcam.maven.plugin.jigsaw.Export[]
  • Required: No

<skip>

Skip execution of this plugin
  • Type: boolean
  • Required: No
  • User Property: skip
  • Default: false

<targetFile>

The module-info.class file. Default value is recommended; module-info.class must appear in the root of the JAR, with the exception of Multi-Release JARs.
  • Type: java.io.File
  • Required: Yes
  • User Property: targetFile
  • Default: ${project.build.outputDirectory}/module-info.class

<uses>

Manually specify any module uses clauses
  • Type: java.util.List
  • Required: No

<verbose>

Log more information from this plugin (debug-level messages promoted to info-level)
  • Type: boolean
  • Required: No
  • User Property: verbose
  • Default: false

Back to top

Version: 0.0.4. Last Published: 2018-11-25.

Earcam Maven Skin.