Java之旅EJB(3)——Ant提高ejb开发效率

  前面已经讲过了并且已经演示过了,我们部署一个程序的过程是很繁琐的,不仅仅要手动拷贝生成的jar包,还有将在之前进行jar的生成,好麻烦啊,那么接下来就介绍一个新的小伙伴来帮你一把吧。

Myeclipse或者说是eclipse是集成了ant工具的,

 1.      简介

  关于Ant的简介,这是网上的资料,Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。目前的最新版本为:Ant1.9.4[1]  。

  既然我们已经有了make,gnumake, nmake, jam以及其他的build工具为什么还要要一种新的build工具呢?

因为Ant的原作者在多种(硬件)平台上开发软件时,无法忍受这些工具的限制和不便。类似于make的工具本质上是基于shell(语言)的:他们计算依赖关系,然后执行命令(这些命令与你在命令行敲的命令没太大区别)。这就意味着你可以很容易地通过使用OS特有的或编写新的(命令)程序扩展该工具;然而,这也意味着你将自己限制在了特定的OS,或特定的OS类型上,如Unix。

  Makefile也很可恶。任何使用过他们的人都碰到过可恶的tab问题。Ant的原作者经常这样问自己:“是否我的命令不执行只是因为在我的tab前有一个空格?!!”。类似于jam的工具很好地处理了这类问题,但是(用户)必须记住和使用一种新的格式。

  Ant就不同了。与基于shell命令的扩展模式不同,Ant用Java的类来扩展。(用户)不必编写shell命令,配置文件是基于XML的,通过调用target树,就可执行各种task。每个task由实现了一个特定Task接口的对象来运行。

 2.      使用

  建立一个ant配置文件,命名为build.xml,ant的作用是编译,打包,发布和解或者卸载部署;

  我的配置文件如下文:

<?xml version="1.0" encoding="UTF-8" ?>
<!--依创建的项目的名字,以及当前的目录,第一个属性配置是源文件存在的目录,-->
<!--第二个是系统环境变量jboss的安装地址,第三个是获取到环境变量,第四个是jboss的默认配置项,第五个是编译后的文件存放目录,设好的-->
<project name="HelloWorld" basedir=".">
	<property name="src.dir" value="${basedir}\src"/>
	<property environment="env"/><!--取window,unix...的环境变量-->
	<property name="jboss.home" value="${env.JAVA_HOME}"/>
	<property name="jboss.server.config" value="default"/>
	<property name="build.dir" value="${basedir}\build" />
	<!--依赖的jar包存在的地方-->
	 <path id="build.classpath">
	    <fileset dir="${jboss.home}\client">
	    	<include name="*.jar"/>
	    </fileset>
	  	 <pathelement location="${build.dir}"/>
	  </path>
	<!--根据上面设置的属性,创建编译后文件的存放目录-->
	<target name="prepare">
		<delete dir="${build.dir}"/>
		<mkdir dir="${build.dir}"/>
	</target>
	<!--编译过程,源文件目录以及目标文件的目录,并且将所有的jar进行编译,编译依赖于准备过程-->
	<target name="compile" depends="prepare" description="编译">
	<!--编译-->
		<javac srcdir="${src.dir}" destdir="${build.dir}">
			<classpath refid="build.classpath"/>
		</javac>
	</target>
	<!--创建jar包过程,将编译后文件存放目录下的所有的class文件进行打包,创建jar包的过程依赖于编译过程-->
	<target name="ejbjar" depends="compile" description="创建ejb发布包">
	           <jar jarfile="${basedir}\${ant.project.home}.jar">
	    	    <fileset dir="${build.dir}">
	    	    	<include name="**/*.class"/>
	    	    </fileset>
	            </jar>
	</target >
	<!--发布过程,发布的过程就是将打包后存放的地方,拷贝到jboss默认配置项的deploy目录下面,部署依赖于打包过程-->
	<target name="deploy" depends="ejbjar" description="ejb发布">
		<copy file="${basedir}\${ant.project.home}.jar" todir="${jboss.home}\server\${jboss.server.config}\deploy\${{ant.project.home}.jar">
		</copy>
	</target >

	<!--解部署过程,就是将相应的部署文件进行删除-->
	<target name="undeploy" depends="ejbjar" description="ejb解发布">
		<delete file="${basedir}\${ant.project.home}.jar" todir="${jboss.home}\server\${jboss.server.config}\deploy\${{ant.project.home}.jar">
		</delete>
	</target >
</project>

  注意:是否正确启动,你记住要在环境变量中配置你的jboss环境变量啊,出现其他错误一般和配置有关,调整即可。此外,点击部署的时候首先需要将jboss进行启动。

  当你的配置创建成功后效果:

  点击各个步骤即可。

  关键节点解析:

  Ant构建文件是XML文件。每个构建文件定义一个唯一的项目(Project元素)。每个项目下可以定义很多目标(target元素),这些目标之间可以有依赖关系。当执行这类目标时,需要执行他们所依赖的目标。每个目标中可以定义多个任务,目标中还定义了所要执行的任务序列。

   1、  Project标签:每个构建文件对应一个项目。<project>标签是构建文件的根标签。并且存在多个内在属性,比如上图的文件中的name(表示项目名), (basedir)表示项目的基准目录,此外还有其他的等等。

   2、  Path标签:用于指定依赖的jar存放的路径。

   3、  Target标签:一个项目标签下可以有一个或多个target标签。一个target标签可以依赖其他的target标签。例如,有一个target用于编译程序,另一个target用于声称可执行文件。在生成可执行文件之前必须先编译该文件,因此可执行文件的target依赖于编译程序的target。例如上面的文件中的depends属性表示target之间的依赖。

   4、  Property标签:property元素可看作参量或者参数的定义,project 的属性可以通过property 元素来设定,也可在 Ant 之外设定。property 元素可用作 task 的属性值。在 task 中是通过将属性名放在“ ${ ”和“ } ”之间,并放在 task 属性值的位置来实现的。

  命令

   1、  mkdir命令:创建目录;用于创建一个目录,存放生成编译后的文件。

   2、  delete命令:对文件或目录进行删除,或者是部署后的项目;

   3、  copy命令:copy主要用来对文件和目录的复制功能;

  构建及部署项目:

   1、  javac命令:学习过jdk的都不陌生,在dos窗口写过java程序的都知道这是个编译命令。

   2、  jar命令:来生成jar包,在发布或者运行前可以先生成jar包;

   3、  java命令:学习过jdk的都不陌生,在dos窗口写过java程序的都知道这是个运行命令。

 3.      小结

  至此这个工具的使用完成,大家明白了吗?不过这也是自己初始的一点小小的理解,还是需要继续学习的~

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-08 13:52:30

Java之旅EJB(3)——Ant提高ejb开发效率的相关文章

EJB通过ANT提高EJB应用的开发效率、开发具有本地接口的无状态bean、开发有状态bean

把jboss集成进eclipse 关闭Jboss控制台按Ctrl+c,在MyEclipse→Servers→Jboss里面可以配置JBoss. 通过ANT提高EJB应用的开发效率 在HelloWorld 加入ANT,右击项目新建xml:build.xml,右击打开方式选择Ant .. 对应用进行编译.打包.发布.解发布 <?xml version="1.0" encoding="UTF-8"?> <!--basedirz项目所在路径,.代表在bui

EJB通过ANT提高EJB应用程序的开发效率、无状态发展本地接口bean、开发状态bean

该jboss集成到eclipse 关掉Jboss控制台新闻Ctrl+c,在MyEclipse→Servers→Jboss可配置JBoss. 通过ANT提高EJB应用的开发效率 在HelloWorld 增加ANT,右击项目新建xml:build.xml,右击打开方式选择Ant .. 相应用进行编译.打包.公布.解公布 <? xml version="1.0" encoding="UTF-8"? > <!--basedirz项目所在路径,.代表在bui

提高eclipse使用效率(二) 提高Android开发效率的小技巧

2013-09-04 22:49:33cnblogs.com-sw926-点击数:214 XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Window - Preferences,在右边的目录树中切换到XML - XML Files - Editor - Content Assist,是不是很熟悉,没错,就是Content Assist 接下来就简单了,延迟设为50ms,提示字母把能填的都填上去,设置完之后可以试一下.输入

iOS开发——实用篇&amp;提高iOS开发效率的方法和工具

提高iOS开发效率的方法和工具 介绍 这篇文章主要是介绍一下我在iOS开发中使用到的一些可以提升开发效率的方法和工具. IDE 首先要说的肯定是IDE了,说到IDE,Xcode不能跑,当然你也可能同时在使用AppCode等其他的IDE,在这里我主要介绍Xcode中提升开发效率的方法. 1.善用快捷键 快捷键是开发中必不可少的,当你善于使用快捷键的时候,十指在键盘上飞舞,那画面太美,我不敢想象. 常用快捷键操作 2.常用代码片段 开发中有一些常用的代码,可以放到代码片段中,然后下次你就可以使用快捷

转:常用的几个提高iOS开发效率的开源类库及工具

常用的几个提高iOS开发效率的开源类库及工具 iOS开发者 : 开发几个常用的开源类库及下载地址: 算上这个连接:http://wenku.baidu.com/view/bbeb0091dd88d0d233d46a00.html 1.json json编码解码2.GTMBase64 base64编码解码3.TouchXML xml解析4.SFHFKeychainUtils 安全保存用户密码到keychain中 5.MBProgressHUD 很棒的一个加载等待特效框架6.ASIHTTPReque

提高你开发效率的十五个 Visual Studio 使用技巧

提高你开发效率的十五个 Visual Studio 使用技巧 相信做开发的没有不重视效率的.开发C#的都知道,我们很依赖VS,或者说,我们很感谢VS.能够对一个IDE产生依赖,说明这个IDE确实 有它的独特之处.无容置疑,VS是一个非常强大的IDE,它支持多语言编辑.支持C#,VB,C/C++,HTML......它拥有强大的调试编译功能.它让我们不用去记住那些安装,环境变量设置,服务器设置,编译的繁琐过程.高度集成化.凡事有利有弊,在敏捷开发盛行的时代,VS是否值得我们使用是 无容置疑的.但是

使用注释提高iOS开发效率

文章目录 新手在开始参与一个开发项目的时候,会把大部分的时间耗费在阅读项目的需求文档.开发文档和代码,一篇好的需求文档和开发文档会帮助新手很快的理解项目的目标和进度,而新手对于代码的阅读会先从代码的注释开始.拥有良好注释的代码可以省去团队其他的开发者好多时间,不至于让其他参与者去一行一行的阅读代码,去不断地加断点查看代码地跳转逻辑,接下来我们就谈谈iOS开发中使用的一些注释. #pragma mark 确切地说,这是Xcode编译器特定得编译命令,它的作用就是在代码地编辑器中,将顶部的方法函数弹

itoo-快捷部署脚本--提高部署开发效率

 本次是第一次使用批处理文件来作为批量操作的工具,代替了人工的手动的复制,粘贴的方式,使用脚本实现了项目的启动.自动化部署,打开项目根目录.等等,提高了开发和调试的效率. 说明: 当前版本:1.0.0 作    者:李社河 ========================================== 使用说明: 1.直接运行Start__Me.bat即可 注意事项: 1.请在使用本脚本前,配置JBOSS_HOME和PROJ_HOME环境变量 (1)变量名:JBOSS_HOME    

华为云 DAS,大幅提高数据库开发效率

华为云数据管理服务(Data Admin Service,简称DAS),是一款专业的简化数据库管理工具,提供优质的可视化操作界面,大幅提高工作效率,让数据管理变得安全简单.主要包含以下功能:1.SQL 窗口管理DAS 提供了类似 Excel 的表格方式编辑数据,让不懂 SQL 查询语言的用户也能无障碍增删.改查表数据以及统计分析.SQL 窗口提供 SQL 格式化.SQL 智能提示.SQL执行计划.SQL模板等功能.目前,DAS 新支持常用SQL保存功能,方便开发人员查找和复用. DAS常用 SQ