ejb:ejb

Full name:

org.apache.maven.plugins:maven-ejb-plugin:2.5.1:ejb

Description:

Build an EJB (and optional client) from the current project.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: runtime.
  • The goal is thread-safe and supports parallel builds.
  • Binds by default to the lifecycle phase: package.

Required Parameters

Name Type Since Description
sourceDirectory File - Directory that contains the resources which are packaged into the created archive target/classes.
Default value is: ${project.build.outputDirectory}.

Optional Parameters

Name Type Since Description
archive MavenArchiveConfiguration - The archive configuration to use. See Maven Archiver Reference.
classifier String - Classifier to add to the artifact generated. If given, the artifact will be an attachment instead.
User property is: ejb.classifier.
clientExcludes List - The files and directories to exclude from the client jar. Usage:
<clientExcludes>
  <clientExclude>**/*Ejb.class</clientExclude>
  <clientExclude>**/*Bean.class</clientExclude>
</clientExcludes>

Attribute is used only if client jar is generated.
Default exclusions: **/*Bean.class, **/*CMP.class, **/*Session.class, **/package.html
clientIncludes List - The files and directories to include in the client jar. Usage:
<clientIncludes>
  <clientInclude>**/*</clientInclude>
</clientIncludes>

Attribute is used only if client jar is generated.
Default value: **/**
ejbJar String - You can define the location of ejb-jar.xml file.
Default value is: META-INF/ejb-jar.xml.
User property is: ejb.ejbJar.
ejbVersion String 2.1 What EJB version should the EJB Plugin generate? Valid values are "2.x" or "3.x" (where x is a digit). When ejbVersion is "3.x", the ejb-jar.xml file is optional. Usage:
<ejbVersion>3.0</ejbVersion>

Default value is: 2.1.
User property is: ejb.ejbVersion.
escapeBackslashesInFilePath boolean 2.3 To escape interpolated value with windows path. c:\foo\bar will be replaced with c:\\foo\\bar.
Default value is: false.
User property is: ejb.escapeBackslashesInFilePath.
escapeString String 2.3 An expression preceded with this String won't be interpolated. \${foo} will be replaced with ${foo}.
User property is: ejb.escapeString.
excludes List - The files and directories to exclude from the main EJB jar. Usage:
<excludes>
  <exclude>**/*Ejb.class</exclude>
  <exclude>**/*Bean.class</exclude>
</excludes>

Default exclusions: META-INF/ejb-jar.xml, **/package.html
filterDeploymentDescriptor boolean 2.3 To filter the deployment descriptor.
Default value is: false.
User property is: ejb.filterDeploymentDescriptor.
filters List 2.3 Filters (properties files) to include during the interpolation of the deployment descriptor.
generateClient boolean - Whether the EJB client jar should be generated or not.
Default value is: false.
User property is: ejb.generateClient.
jarName String - The name of the EJB file to generate.
Default value is: ${project.build.finalName}.
User property is: jarName.

Parameter Details

archive:

The archive configuration to use. See Maven Archiver Reference.
  • Type: org.apache.maven.archiver.MavenArchiveConfiguration
  • Required: No

classifier:

Classifier to add to the artifact generated. If given, the artifact will be an attachment instead.
  • Type: java.lang.String
  • Required: No
  • User Property: ejb.classifier

clientExcludes:

The files and directories to exclude from the client jar. Usage:
<clientExcludes>
  <clientExclude>**/*Ejb.class</clientExclude>
  <clientExclude>**/*Bean.class</clientExclude>
</clientExcludes>

Attribute is used only if client jar is generated.
Default exclusions: **/*Bean.class, **/*CMP.class, **/*Session.class, **/package.html
  • Type: java.util.List
  • Required: No

clientIncludes:

The files and directories to include in the client jar. Usage:
<clientIncludes>
  <clientInclude>**/*</clientInclude>
</clientIncludes>

Attribute is used only if client jar is generated.
Default value: **/**
  • Type: java.util.List
  • Required: No

ejbJar:

You can define the location of ejb-jar.xml file.
  • Type: java.lang.String
  • Required: No
  • User Property: ejb.ejbJar
  • Default: META-INF/ejb-jar.xml

ejbVersion:

What EJB version should the EJB Plugin generate? Valid values are "2.x" or "3.x" (where x is a digit). When ejbVersion is "3.x", the ejb-jar.xml file is optional. Usage:
<ejbVersion>3.0</ejbVersion>
  • Type: java.lang.String
  • Since: 2.1
  • Required: No
  • User Property: ejb.ejbVersion
  • Default: 2.1

escapeBackslashesInFilePath:

To escape interpolated value with windows path. c:\foo\bar will be replaced with c:\\foo\\bar.
  • Type: boolean
  • Since: 2.3
  • Required: No
  • User Property: ejb.escapeBackslashesInFilePath
  • Default: false

escapeString:

An expression preceded with this String won't be interpolated. \${foo} will be replaced with ${foo}.
  • Type: java.lang.String
  • Since: 2.3
  • Required: No
  • User Property: ejb.escapeString

excludes:

The files and directories to exclude from the main EJB jar. Usage:
<excludes>
  <exclude>**/*Ejb.class</exclude>
  <exclude>**/*Bean.class</exclude>
</excludes>

Default exclusions: META-INF/ejb-jar.xml, **/package.html
  • Type: java.util.List
  • Required: No

filterDeploymentDescriptor:

To filter the deployment descriptor.
  • Type: boolean
  • Since: 2.3
  • Required: No
  • User Property: ejb.filterDeploymentDescriptor
  • Default: false

filters:

Filters (properties files) to include during the interpolation of the deployment descriptor.
  • Type: java.util.List
  • Since: 2.3
  • Required: No

generateClient:

Whether the EJB client jar should be generated or not.
  • Type: boolean
  • Required: No
  • User Property: ejb.generateClient
  • Default: false

jarName:

The name of the EJB file to generate.
  • Type: java.lang.String
  • Required: No
  • User Property: jarName
  • Default: ${project.build.finalName}

sourceDirectory:

Directory that contains the resources which are packaged into the created archive target/classes.
  • Type: java.io.File
  • Required: Yes
  • Default: ${project.build.outputDirectory}