tomcat7:run

Full name:

org.apache.tomcat.maven:tomcat7-maven-plugin:2.0-beta-1:run

Description:

Runs the current project as a dynamic web application using an embedded Tomcat server.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: runtime.
  • Since version: 2.0.
  • Invokes the execution of the lifecycle phase compile prior to executing itself.

Required Parameters

Name Type Since Description
path String 2.0 The webapp context path to use for the web application being run. This must always start with a forward-slash ('/').
Default value is: /${project.artifactId}.
pluginArtifacts List 1.0 (no description)

Optional Parameters

Name Type Since Description
addContextWarDependencies boolean 1.0 Will create a tomcat context for each dependencies of war type with 'scope' set to 'tomcat'. In other words, dependencies with:
   <type>war</type>
   <scope>tomcat</scope>
To preserve backward compatibility it's false by default.
Default value is: false.
addWarDependenciesInClassloader boolean 2.0 will add /WEB-INF/lib/*.jar and /WEB-INF/classes from war dependencies in the webappclassloader
Default value is: true.
additionalClasspathDirs List 2.0 Additional optional directories to add to the embedded tomcat classpath.
additionalConfigFilesDir File 1.0-alpha-2 The directory contains additional configuration Files that copied in the Tomcat conf Directory.
Default value is: ${basedir}/src/main/tomcatconf.
ajpPort int 2.0 The AJP port to run the Tomcat server on. By default it's 0 this means won't be started. The ajp connector will be started only for value > 0.
Default value is: 0.
ajpProtocol String 2.0 The AJP protocol to run the Tomcat server on. By default it's ajp. NOTE The ajp connector will be started only if ajpPort > 0. possible values are:
  • org.apache.coyote.ajp.AjpProtocol - new blocking Java connector that supports an executor
  • org.apache.coyote.ajp.AjpAprProtocol - the APR/native connector.

Default value is: org.apache.coyote.ajp.AjpProtocol.
backgroundProcessorDelay int 2.0 represents the delay in seconds between each classPathScanning change invocation
Default value is: -1.
configurationDir File 2.0 The directory to create the Tomcat server configuration under.
contextFile File 2.0 The path of the Tomcat context XML file.
contextReloadable boolean 2.0 Force context scanning if you don't use a context file with reloadable = "true". The other way to use contextReloadable is to add attribute reloadable = "true" in your context file.
Default value is: false.
delegate boolean 1.0 Set the "follow standard delegation model" flag used to configure our ClassLoader.
Default value is: true.
fork boolean 1.0 Set this to true to allow Maven to continue to execute after invoking the run goal.
Default value is: false.
httpsPort int 1.0 The https port to run the Tomcat server on. By default it's 0 this means won't be started. The https connector will be started only for value > 0.
Default value is: 0.
ignorePackaging boolean 1.0 If set to true ignore if packaging of project is not 'war'.
Default value is: false.
keystoreFile String 1.1 Override the default keystoreFile for the HTTPS connector (if enabled)
keystorePass String 1.1 Override the default keystorePass for the HTTPS connector (if enabled)
port int 2.0 The port to run the Tomcat server on.
Default value is: 8080.
protocol String 2.0 The protocol to run the Tomcat server on. By default it's HTTP/1.1.
Default value is: HTTP/1.1.
serverXml File 1.0-alpha-2 server.xml to use Note if you use this you must configure in this file your webapp paths.
systemProperties Map 1.0-alpha-2 List of System properties to pass to the Tomcat Server.
tomcatLoggingFile File 2.0 The path of the Tomcat logging configuration.
tomcatUsers File 2.0 The path of the Tomcat users XML file.
tomcatWebXml File 1.0-alpha-2 overriding the providing web.xml to run tomcat
uriEncoding String 1.0 The character encoding to use for decoding URIs.
Default value is: ISO-8859-1.
useNaming boolean 2.0

Enables or disables naming support for the embedded Tomcat server.

Note: This setting is ignored if you provide a server.xml for your Tomcat. Instead please configure naming in the server.xml.


Default value is: true.
useSeparateTomcatClassLoader boolean 1.0 if true a new classLoader separated from maven core will be created to start tomcat.
Default value is: false.
useTestClasspath boolean 2.0 will use the test classpath rather than the compile one and will add test dependencies too
Default value is: false.
warSourceDirectory File 2.0 The web resources directory for the web application being run.
Default value is: ${basedir}/src/main/webapp.

Parameter Details

addContextWarDependencies:

Will create a tomcat context for each dependencies of war type with 'scope' set to 'tomcat'. In other words, dependencies with:
   <type>war</type>
   <scope>tomcat</scope>
To preserve backward compatibility it's false by default.
  • Type: boolean
  • Since: 1.0
  • Required: No
  • Expression: ${maven.tomcat.addContextWarDependencies}
  • Default: false

addWarDependenciesInClassloader:

will add /WEB-INF/lib/*.jar and /WEB-INF/classes from war dependencies in the webappclassloader
  • Type: boolean
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.addWarDependenciesInClassloader}
  • Default: true

additionalClasspathDirs:

Additional optional directories to add to the embedded tomcat classpath.
  • Type: java.util.List
  • Since: 2.0
  • Required: No

additionalConfigFilesDir:

The directory contains additional configuration Files that copied in the Tomcat conf Directory.
  • Type: java.io.File
  • Since: 1.0-alpha-2
  • Required: No
  • Expression: ${maven.tomcat.additionalConfigFilesDir}
  • Default: ${basedir}/src/main/tomcatconf

ajpPort:

The AJP port to run the Tomcat server on. By default it's 0 this means won't be started. The ajp connector will be started only for value > 0.
  • Type: int
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.ajp.port}
  • Default: 0

ajpProtocol:

The AJP protocol to run the Tomcat server on. By default it's ajp. NOTE The ajp connector will be started only if ajpPort > 0. possible values are:
  • org.apache.coyote.ajp.AjpProtocol - new blocking Java connector that supports an executor
  • org.apache.coyote.ajp.AjpAprProtocol - the APR/native connector.
  • Type: java.lang.String
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.ajp.protocol}
  • Default: org.apache.coyote.ajp.AjpProtocol

backgroundProcessorDelay:

represents the delay in seconds between each classPathScanning change invocation
  • Type: int
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.backgroundProcessorDelay}
  • Default: -1

configurationDir:

The directory to create the Tomcat server configuration under.
  • Type: java.io.File
  • Since: 2.0
  • Required: No
  • Expression: ${project.build.directory}/tomcat

contextFile:

The path of the Tomcat context XML file.
  • Type: java.io.File
  • Since: 2.0
  • Required: No
  • Expression: src/main/webapp/META-INF/context.xml

contextReloadable:

Force context scanning if you don't use a context file with reloadable = "true". The other way to use contextReloadable is to add attribute reloadable = "true" in your context file.
  • Type: boolean
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.contextReloadable}
  • Default: false

delegate:

Set the "follow standard delegation model" flag used to configure our ClassLoader.
  • Type: boolean
  • Since: 1.0
  • Required: No
  • Expression: ${tomcat.delegate}
  • Default: true

fork:

Set this to true to allow Maven to continue to execute after invoking the run goal.
  • Type: boolean
  • Since: 1.0
  • Required: No
  • Expression: ${maven.tomcat.fork}
  • Default: false

httpsPort:

The https port to run the Tomcat server on. By default it's 0 this means won't be started. The https connector will be started only for value > 0.
  • Type: int
  • Since: 1.0
  • Required: No
  • Expression: ${maven.tomcat.httpsPort}
  • Default: 0

ignorePackaging:

If set to true ignore if packaging of project is not 'war'.
  • Type: boolean
  • Since: 1.0
  • Required: No
  • Expression: ${tomcat.ignorePackaging}
  • Default: false

keystoreFile:

Override the default keystoreFile for the HTTPS connector (if enabled)
  • Type: java.lang.String
  • Since: 1.1
  • Required: No

keystorePass:

Override the default keystorePass for the HTTPS connector (if enabled)
  • Type: java.lang.String
  • Since: 1.1
  • Required: No

path:

The webapp context path to use for the web application being run. This must always start with a forward-slash ('/').
  • Type: java.lang.String
  • Since: 2.0
  • Required: Yes
  • Expression: ${maven.tomcat.path}
  • Default: /${project.artifactId}

pluginArtifacts:

(no description)
  • Type: java.util.List
  • Since: 1.0
  • Required: Yes
  • Expression: ${plugin.artifacts}

port:

The port to run the Tomcat server on.
  • Type: int
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.port}
  • Default: 8080

protocol:

The protocol to run the Tomcat server on. By default it's HTTP/1.1.
  • Type: java.lang.String
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.protocol}
  • Default: HTTP/1.1

serverXml:

server.xml to use Note if you use this you must configure in this file your webapp paths.
  • Type: java.io.File
  • Since: 1.0-alpha-2
  • Required: No
  • Expression: ${maven.tomcat.serverXml}

systemProperties:

List of System properties to pass to the Tomcat Server.
  • Type: java.util.Map
  • Since: 1.0-alpha-2
  • Required: No

tomcatLoggingFile:

The path of the Tomcat logging configuration.
  • Type: java.io.File
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.tomcatLogging.file}

tomcatUsers:

The path of the Tomcat users XML file.
  • Type: java.io.File
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.tomcatUsers.file}

tomcatWebXml:

overriding the providing web.xml to run tomcat
  • Type: java.io.File
  • Since: 1.0-alpha-2
  • Required: No
  • Expression: ${maven.tomcat.webXml}

uriEncoding:

The character encoding to use for decoding URIs.
  • Type: java.lang.String
  • Since: 1.0
  • Required: No
  • Expression: ${maven.tomcat.uriEncoding}
  • Default: ISO-8859-1

useNaming:

Enables or disables naming support for the embedded Tomcat server.

Note: This setting is ignored if you provide a server.xml for your Tomcat. Instead please configure naming in the server.xml.

  • Type: boolean
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.useNaming}
  • Default: true

useSeparateTomcatClassLoader:

if true a new classLoader separated from maven core will be created to start tomcat.
  • Type: boolean
  • Since: 1.0
  • Required: No
  • Expression: ${tomcat.useSeparateTomcatClassLoader}
  • Default: false

useTestClasspath:

will use the test classpath rather than the compile one and will add test dependencies too
  • Type: boolean
  • Since: 2.0
  • Required: No
  • Expression: ${maven.tomcat.useTestClasspath}
  • Default: false

warSourceDirectory:

The web resources directory for the web application being run.
  • Type: java.io.File
  • Since: 2.0
  • Required: No
  • Expression: ${tomcat.warSourceDirectory}
  • Default: ${basedir}/src/main/webapp