org.mortbay.jetty.plugin
Class JettyRunMojo

java.lang.Object
  extended by org.apache.maven.plugin.AbstractMojo
      extended by org.mortbay.jetty.plugin.AbstractJettyMojo
          extended by org.mortbay.jetty.plugin.JettyRunMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo
Direct Known Subclasses:
JettyStartMojo

public class JettyRunMojo
extends AbstractJettyMojo

This goal is used in-situ on a Maven project without first requiring that the project is assembled into a war, saving time during the development cycle. The plugin forks a parallel lifecycle to ensure that the "compile" phase has been completed before invoking Jetty. This means that you do not need to explicity execute a "mvn compile" first. It also means that a "mvn clean jetty:run" will ensure that a full fresh compile is done before invoking Jetty.

Once invoked, the plugin can be configured to run continuously, scanning for changes in the project and automatically performing a hot redeploy when necessary. This allows the developer to concentrate on coding changes to the project using their IDE of choice and have those changes immediately and transparently reflected in the running web container, eliminating development time that is wasted on rebuilding, reassembling and redeploying.

You may also specify the location of a jetty.xml file whose contents will be applied before any plugin configuration. This can be used, for example, to deploy a static webapp that is not part of your maven build.

There is a reference guide to the configuration parameters for this plugin, and more detailed information with examples in the Configuration Guide.


Field Summary
 
Fields inherited from class org.mortbay.jetty.plugin.AbstractJettyMojo
connectors, consoleScanner, contextHandlers, contextPath, contextXml, daemon, excludedGoals, jettyXml, loginServices, PORT_SYSPROPERTY, project, projectArtifacts, reload, requestLog, scanIntervalSeconds, scanList, scanner, scannerListeners, server, skip, stopKey, stopPort, systemProperties, systemPropertiesFile, tmpDirectory, useProvidedScope, webApp
 
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
 
Constructor Summary
JettyRunMojo()
           
 
Method Summary
 void checkPomConfiguration()
          Verify the configuration given in the pom.
 void configureScanner()
           
 void configureWebApplication()
          Subclasses should invoke this to setup basic info on the webapp
 void execute()
           
 File getClassesDirectory()
           
 List<File> getExtraScanTargets()
           
 ScanTargetPattern[] getScanTargetPatterns()
           
 File[] getScanTargets()
           
 File getTestClassesDirectory()
           
 File getWebAppSourceDirectory()
           
 String getWebXml()
           
 boolean isUseTestClasspath()
           
 void restartWebApp(boolean reconfigureScanner)
           
 void setClassesDirectory(File classesDirectory)
           
 void setExtraScanTargets(List<File> list)
           
 void setScanTargetPatterns(ScanTargetPattern[] scanTargetPatterns)
           
 void setScanTargets(File[] scanTargets)
           
 void setTestClassesDirectory(File testClassesDirectory)
           
 void setUseTestClasspath(boolean useTestClasspath)
           
 void setWebAppSourceDirectory(File webAppSourceDirectory)
           
 void setWebXml(String webXml)
           
 
Methods inherited from class org.mortbay.jetty.plugin.AbstractJettyMojo
applyJettyXml, configurePluginClasspath, findJettyWebXmlFile, finishConfigurationBeforeStart, getConnectors, getContextHandlers, getContextPath, getJettyConfig, getJettyXmlFiles, getLoginServices, getPluginArtifacts, getProject, getReload, getRequestLog, getScanIntervalSeconds, getScanList, getScanner, getScannerListeners, getServer, getStopKey, getStopPort, getSystemProperties, getSystemPropertiesFile, getTmpDirectory, getWebAppConfig, getWebAppXml, isDaemon, isExcluded, isPluginArtifact, isSkip, setConnectors, setContextHandlers, setContextPath, setDaemon, setJettyConfig, setLoginServices, setPluginArtifacts, setProject, setReload, setRequestLog, setScanIntervalSeconds, setScanList, setScannerListeners, setServer, setSkip, setStopKey, setStopPort, setSystemProperties, setSystemPropertiesFile, setTmpDirectory, setWebAppConfig, setWebAppXml, startConsoleScanner, startJetty
 
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
 

Constructor Detail

JettyRunMojo

public JettyRunMojo()
Method Detail

checkPomConfiguration

public void checkPomConfiguration()
                           throws org.apache.maven.plugin.MojoExecutionException
Verify the configuration given in the pom.

Specified by:
checkPomConfiguration in class AbstractJettyMojo
Throws:
org.apache.maven.plugin.MojoExecutionException
See Also:
AbstractJettyMojo.checkPomConfiguration()

configureWebApplication

public void configureWebApplication()
                             throws Exception
Description copied from class: AbstractJettyMojo
Subclasses should invoke this to setup basic info on the webapp

Overrides:
configureWebApplication in class AbstractJettyMojo
Throws:
org.apache.maven.plugin.MojoExecutionException
Exception

configureScanner

public void configureScanner()
                      throws org.apache.maven.plugin.MojoExecutionException
Specified by:
configureScanner in class AbstractJettyMojo
Throws:
org.apache.maven.plugin.MojoExecutionException

restartWebApp

public void restartWebApp(boolean reconfigureScanner)
                   throws Exception
Specified by:
restartWebApp in class AbstractJettyMojo
Throws:
Exception

execute

public void execute()
             throws org.apache.maven.plugin.MojoExecutionException,
                    org.apache.maven.plugin.MojoFailureException
Specified by:
execute in interface org.apache.maven.plugin.Mojo
Overrides:
execute in class AbstractJettyMojo
Throws:
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException

getWebXml

public String getWebXml()

setWebXml

public void setWebXml(String webXml)

getClassesDirectory

public File getClassesDirectory()

setClassesDirectory

public void setClassesDirectory(File classesDirectory)

getWebAppSourceDirectory

public File getWebAppSourceDirectory()

setWebAppSourceDirectory

public void setWebAppSourceDirectory(File webAppSourceDirectory)

getExtraScanTargets

public List<File> getExtraScanTargets()

setExtraScanTargets

public void setExtraScanTargets(List<File> list)

isUseTestClasspath

public boolean isUseTestClasspath()

setUseTestClasspath

public void setUseTestClasspath(boolean useTestClasspath)

getTestClassesDirectory

public File getTestClassesDirectory()

setTestClassesDirectory

public void setTestClassesDirectory(File testClassesDirectory)

getScanTargets

public File[] getScanTargets()

setScanTargets

public void setScanTargets(File[] scanTargets)

getScanTargetPatterns

public ScanTargetPattern[] getScanTargetPatterns()

setScanTargetPatterns

public void setScanTargetPatterns(ScanTargetPattern[] scanTargetPatterns)


Copyright © 1995-2012 Mort Bay Consulting. All Rights Reserved.