modello:velocity
Full name:
org.codehaus.modello:modello-maven-plugin:2.3.0:velocity
Description:
Creates files from the model using Velocity templates.
This mojo can be given a list of templates and a list of parameters. Each template from the templates
property will be run with the following context:
version
: the version of the model to generatemodel
: the modello modelHelper
: aorg.codehaus.modello.plugin.velocity.Helper
object instance- any additional parameters specified using the
params
property
#MODELLO-VELOCITY#SAVE-OUTPUT-TO
VTL directive. This allows a single template to generate multiple files. For example, the following directive will redirect further output from the template to a file named org/apache/maven/api/model/Plugin.java
if the variable package
is set to org.apache.maven.api.model
and the variable className
is set to Plugin
.
#MODELLO-VELOCITY#SAVE-OUTPUT-TO ${package.replace('.','/')
/${className}.java}
Attributes:
- Requires a Maven project to be executed.
- The goal is thread-safe and supports parallel builds.
- Binds by default to the lifecycle phase:
generate-sources
.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<basedir> |
String |
- |
Base directory of the project, from where the Modello models are loaded. Default: ${basedir} |
<models> |
String[] |
- |
List of relative paths to mdo files containing the models. |
<packageWithVersion> |
boolean |
- |
True if the generated package names should include the version. Default: false User Property: packageWithVersion |
<version> |
String |
- |
The version of the model we will be working on. User Property: version |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<outputDirectory> |
File |
- |
The output directory of the generated files. Default: ${project.build.directory}/generated-sources/modello |
<packagedVersions> |
List<String> |
- |
Additional historical versions to generate, each being packaged with the version regardless of the packageWithVersion setting. |
<params> |
List<String> |
- |
A list of parameters, using the syntax key=value . Those parameters will be made accessible to the templates. |
<templates> |
List<String> |
- |
A list of template paths to be run against the loaded Modello model. Those are .vm files as described in the Velocity Users Guide relative to velocityBasedir . |
<velocityBasedir> |
File |
- |
The directory where Velocity templates are looked for. Default: ${project.basedir} |
Parameter Details
<basedir>
Base directory of the project, from where the Modello models are loaded.
- Type:
java.lang.String
- Required:
report.plugin.goal.yes
- Default:
${basedir}
<models>
List of relative paths to mdo files containing the models.
- Type:
java.lang.String[]
- Required:
report.plugin.goal.yes
<outputDirectory>
The output directory of the generated files.
- Type:
java.io.File
- Required:
report.plugin.goal.no
- Default:
${project.build.directory}/generated-sources/modello
<packagedVersions>
Additional historical versions to generate, each being packaged with the version regardless of the
packageWithVersion
setting.- Type:
java.util.List<java.lang.String>
- Required:
report.plugin.goal.no
<packageWithVersion>
True if the generated package names should include the version.
- Type:
boolean
- Required:
report.plugin.goal.yes
- User Property:
packageWithVersion
- Default:
false
<params>
A list of parameters, using the syntax
key=value
. Those parameters will be made accessible to the templates.- Type:
java.util.List<java.lang.String>
- Required:
report.plugin.goal.no
<templates>
A list of template paths to be run against the loaded Modello model. Those are
.vm
files as described in the Velocity Users Guide relative to velocityBasedir
.- Type:
java.util.List<java.lang.String>
- Required:
report.plugin.goal.no
<velocityBasedir>
The directory where Velocity templates are looked for.
- Type:
java.io.File
- Required:
report.plugin.goal.no
- Default:
${project.basedir}
<version>
The version of the model we will be working on.
- Type:
java.lang.String
- Required:
report.plugin.goal.yes
- User Property:
version