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

    Fields
    Modifier and Type
    Field
    Description
    private String
    The classifier to add to any additional artifact of this build that contains the module-info.class file.
    private boolean
    Determines if a folder entry should be created for a module-info.class file that is placed in a multi-release jar if META-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 the module-info.class.
    private String
    Specifies the location of the jar file which should be enhanced with a module-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
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     

    Methods inherited from class codes.rafael.modulemaker.AbstractModuleMojo

    execute, filename, makeModuleInfo

    Methods inherited from class org.apache.maven.plugin.AbstractMojo

    getLog, getPluginContext, setLog, setPluginContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 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

      @Parameter private String source
      Specifies the location of the jar file which should be enhanced with a module-info.class file.
    • classifier

      @Parameter(defaultValue="modularized") private String classifier
      The classifier to add to any additional artifact of this build that contains the module-info.class file. If replace is set to true, this classifier is used for the name of the intermediate jar file. If it is empty, the standard classifier modularized is used.
    • replace

      @Parameter(defaultValue="true") private boolean replace
      true if the original artifact should be replaced with a jar file containing the module-info.class.
    • createMultiReleaseFolderEntry

      @Parameter(defaultValue="true") private boolean createMultiReleaseFolderEntry
      Determines if a folder entry should be created for a module-info.class file that is placed in a multi-release jar if META-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 class AbstractModuleMojo
      Throws:
      org.apache.maven.plugin.MojoExecutionException
      org.apache.maven.plugin.MojoFailureException