Package codes.rafael.modulemaker
Class ModuleInjectMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
codes.rafael.modulemaker.AbstractModuleMojo
codes.rafael.modulemaker.ModuleInjectMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
@Mojo(name="inject-module",
defaultPhase=PACKAGE)
public class ModuleInjectMojo
extends AbstractModuleMojo
A Maven plugin for injecting a
module-info.class
into an existing jar file.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate String
The classifier to add to any additional artifact of this build that contains themodule-info.class
file.private boolean
Determines if a folder entry should be created for amodule-info.class
file that is placed in a multi-release jar ifMETA-INF/versions/[java]/
does not exist.private String
private String
private org.apache.maven.project.MavenProject
private org.apache.maven.project.MavenProjectHelper
private boolean
true
if the original artifact should be replaced with a jar file containing themodule-info.class
.private String
Specifies the location of the jar file which should be enhanced with amodule-info.class
file.Fields inherited from class codes.rafael.modulemaker.AbstractModuleMojo
javaVersion, multirelease
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class codes.rafael.modulemaker.AbstractModuleMojo
execute, filename, makeModuleInfo
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
project
@Parameter(defaultValue="${project}", readonly=true, required=true) private org.apache.maven.project.MavenProject project -
projectHelper
@Component private org.apache.maven.project.MavenProjectHelper projectHelper -
directory
@Parameter(defaultValue="${project.build.directory}", required=true, readonly=true) private String directory -
finalName
@Parameter(defaultValue="${project.build.finalName}", required=true, readonly=true) private String finalName -
source
Specifies the location of the jar file which should be enhanced with amodule-info.class
file. -
classifier
The classifier to add to any additional artifact of this build that contains themodule-info.class
file. Ifreplace
is set totrue
, this classifier is used for the name of the intermediate jar file. If it is empty, the standard classifiermodularized
is used. -
replace
@Parameter(defaultValue="true") private boolean replacetrue
if the original artifact should be replaced with a jar file containing themodule-info.class
. -
createMultiReleaseFolderEntry
@Parameter(defaultValue="true") private boolean createMultiReleaseFolderEntryDetermines if a folder entry should be created for amodule-info.class
file that is placed in a multi-release jar ifMETA-INF/versions/[java]/
does not exist.
-
-
Constructor Details
-
ModuleInjectMojo
public ModuleInjectMojo()
-
-
Method Details
-
doExecute
protected void doExecute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException- Specified by:
doExecute
in classAbstractModuleMojo
- Throws:
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
-