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
- Author:
- Keegan Witt
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Version
Groovy 4.0.0 alpha-1 version.protected String
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 -
Method Summary
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 Details
-
Constructor Details
-
Method Details
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionExceptionExecutes this mojo.- Throws:
org.apache.maven.plugin.MojoExecutionException
- If an unexpected problem occurs (causes a "BUILD ERROR" message to be displayed)
-
setupShell
protected Object setupShell(Class<?> shellClass, Class<?> bindingClass, Class<?> ioClass, Class<?> verbosityClass, Class<?> loggerClass) throws InvocationTargetException, IllegalAccessException, 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:
InstantiationException
- when a class needed for setting up a shell cannot be instantiatedIllegalAccessException
- when a method needed for setting up a shell cannot be accessedInvocationTargetException
- when a reflection invocation needed for setting up a shell cannot be completed
-