要发布EJB 时必须把她打成*.jar 文件,一个EJB 打包后的目录结构如下:
EJB 应用根目录:
| -- com (你的.class 文件)
| -- META-INF
| -- MANIFEST.MF (如果使用工具打包,该文件由工具自动生成)
打包的方式有很多,如:jar 命令行、集成开发环境的打包向导和Ant 任务。
下面介绍Elispse 打包向导和Ant 打包任务。
1. Elispse 打包向导
在Elispse 开发环境下,可以通过向导进行打包。右击项目名称,在跳出的菜单中选择Export-->Java-->JAR file,在"选择要导出的资源"时,选择源目录和用到的资源然,后选择一个存放目录及文件名,点"完成"就结束了打包。
2. Ant 打包任务
主要是在Eclipse下,通过配置build.xml进行ANT 打包,来提高开发效率,也是推荐的打包方式。
下面我们看一个简单的打包任务。
<?xml version="1.0" encoding="UTF-8"?>
<project name="EJB-HelloWorld" basedir=".">
<property name="src.dir" value="${basedir}/src" />
<property environment="env" />
<property name="jboss.home" value="${env.JBOSS_HOME}" />
<property name="jboss.server.config" value="default" />
<property name="build.dir" value="${basedir}/build" />
<path id="build.classpath">
<fileset dir="${jboss.home}/client">
<include name="*.jar"></include>
</fileset>
<pathelement location="${build.dir}"/>
</path>
<target name="prepare">
<delete dir="${build.dir}"/>
<mkdir dir="${build.dir}"/>
</target>
<target name="compile" depends="prepare" description="编译 ">
<javac srcdir="${src.dir}" destdir="${build.dir}">
<classpath refid="build.classpath" />
</javac>
</target>
<target name="ejbjar" depends="compile" description="创建EJB发布包">
<jar jarfile="${basedir}/${ant.project.name}.jar" >
<fileset dir="${build.dir}" >
<include name="**/*.class"></include>
</fileset>
</jar>
</target>
<target name="deploy" depends="ejbjar" description="发布EJB">
<copy file="${basedir}/${ant.project.name}.jar" todir="${jboss.home}/server/${jboss.server.config}/deploy"/>
</target>
<target name="undeploy" description="卸载EJB">
<delete file="${jboss.home}/server/${jboss.server.config}/deploy/${ant.project.name}.jar"/>
</target>
</project>
再右健点击此配置文件build.xml,选择Run As-->Ant Build即可!