Package org.codehaus.gmavenplus.mojo
Class ShellMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
-
- org.codehaus.gmavenplus.mojo.AbstractToolsMojo
-
- org.codehaus.gmavenplus.mojo.ShellMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
@Mojo(name="shell", requiresDependencyResolution=TEST) public class ShellMojo extends AbstractToolsMojo
Launches a Groovy shell bound to the current project. Note that this mojo requires Groovy >= 1.5.0. Note that it references the plugin ClassLoader to pull in dependencies Groovy didn't include (for things like Ant for AntBuilder, Ivy for @grab, and Jansi for Groovysh).- Since:
- 1.1
-
-
Field Summary
Fields Modifier and Type Field Description protected static Version
GROOVY_4_0_0_ALPHA1
Groovy 4.0.0 alpha-1 version.protected java.lang.String
verbosity
Groovy shell verbosity level.-
Fields inherited from class org.codehaus.gmavenplus.mojo.AbstractToolsMojo
allowSystemExits, bindAllProjectProperties, bindAllSessionUserProperties, bindPropertiesToSeparateVariables, bindSessionUserOverrideProperties, includeClasspath, projectHelper, properties
-
Fields inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
classWrangler, GROOVY_1_5_0, GROOVY_SOURCES_PATTERN, JAVA_1_7, JAVA_1_8, JAVA_12, JAVA_SOURCES_PATTERN, minGroovyVersion, mojoExecution, pluginArtifacts, project, session
-
-
Constructor Summary
Constructors Constructor Description ShellMojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
execute()
Executes this mojo.protected java.lang.Object
setupShell(java.lang.Class<?> shellClass, java.lang.Class<?> bindingClass, java.lang.Class<?> ioClass, java.lang.Class<?> verbosityClass, java.lang.Class<?> loggerClass)
Creates the Groovysh to run.-
Methods inherited from class org.codehaus.gmavenplus.mojo.AbstractToolsMojo
initializeProperties, logUnableToInitializeAntBuilder
-
Methods inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
getJavaVersion, getJavaVersionString, groovyAtLeast, groovyIs, groovyNewerThan, groovyOlderThan, groovyVersionSupportsAction, isGroovyIndy, isJavaSupportIndy, isJavaSupportParameters, isJavaSupportPreviewFeatures, logPluginClasspath, setupClassWrangler
-
-
-
-
Field Detail
-
GROOVY_4_0_0_ALPHA1
protected static final Version GROOVY_4_0_0_ALPHA1
Groovy 4.0.0 alpha-1 version.
-
verbosity
@Parameter(defaultValue="QUIET") protected java.lang.String verbosity
Groovy shell verbosity level. Should be one of:- QUIET
- INFO
- DEBUG
- VERBOSE
-
-
Method Detail
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException
Executes this mojo.- Throws:
org.apache.maven.plugin.MojoExecutionException
- If an unexpected problem occurs (causes a "BUILD ERROR" message to be displayed)
-
setupShell
protected java.lang.Object setupShell(java.lang.Class<?> shellClass, java.lang.Class<?> bindingClass, java.lang.Class<?> ioClass, java.lang.Class<?> verbosityClass, java.lang.Class<?> loggerClass) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException, java.lang.InstantiationException
Creates the Groovysh to run.- Parameters:
shellClass
- the Groovysh classbindingClass
- the Binding classioClass
- the IO classverbosityClass
- the VerbosityloggerClass
- the Logger class- Returns:
- the Groovysh shell to run
- Throws:
java.lang.InstantiationException
- when a class needed for setting up a shell cannot be instantiatedjava.lang.IllegalAccessException
- when a method needed for setting up a shell cannot be accessedjava.lang.reflect.InvocationTargetException
- when a reflection invocation needed for setting up a shell cannot be completed
-
-