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

2024-05-26 07:38

本文主要是介绍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.      小结

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

这篇关于Java之旅EJB(3)——Ant提高ejb开发效率的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1003839

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

java中long的一些常见用法

《java中long的一些常见用法》在Java中,long是一种基本数据类型,用于表示长整型数值,接下来通过本文给大家介绍java中long的一些常见用法,感兴趣的朋友一起看看吧... 在Java中,long是一种基本数据类型,用于表示长整型数值。它的取值范围比int更大,从-922337203685477

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte