3.5.3. Packaging A Service
After testing your service, it is time to package it up so that others can use it. The simplest way to do this is to create a JAR containing all of the classes. You can choose to include the deployment descriptor if there is a sensible default way to configure the service, but this is optional.
Procedure 3.1. Packaging a Service
Place the deployment descriptor in the
META-INF
directory (optional)If you do choose to include the deployment descriptor, by convention it should be namedjboss-beans.xml
and should be placed in aMETA-INF
directory. This is the default layout for the Enterprise Platform, so the JAR deployer recognizes this layout and automatically performs the deployment.The deployment descriptor is not included in the Human Resources example, because the service is configured by editing the descriptor directly, as a separate file.Generate the JAR
To generate a JAR containing all of the compiled classes, entermvn package
from thehumanResourcesService/
directory.Make the JAR available to other Maven projects
To make the JAR available to other Maven projects, entermvn install
in order to copy it to your local Maven repository. The final layout of the JAR is shown in Example 3.3, “Listing of theorg/jboss/example/service
andMETA-INF
Directories”.
Example 3.3. Listing of the org/jboss/example/service
and META-INF
Directories
`-- org `-- jboss `-- example `-- service |-- Address.java |-- Employee.java |-- HRManager.java `-- util |-- AgeBasedSalaryStrategy.java |-- LocationBasedSalaryStrategy.java `-- SalaryStrategy.java `--META-INF `-- MANIFEST.MF `-- maven `-- org.jboss.micrcontainer.examples `-- humanResourceService
Note
The
META-INF/maven
directory is automatically created by Maven, and will not be present if you are using a different build system.