java ant 编译打包build.xml完整配置范例

<?xml version="1.0" encoding="UTF-8" ?>

<project name="cfcasdk" default="run" basedir=".">

<property name="src" value="src"/>

<property name="dest" value="classes"/>

<property name="base.dir" value="." /> 

<property name="lib.dir" value="${base.dir}/lib" />  

<property name="doc.dir" value="doc"/>

<property name="cfcatest_jar" value="cfcasdk.jar"/>

<property name="main.class" value="hz.cfca.sdk.cfcasdk"/>

   <path id="lib_classpath">

       <fileset dir="${lib.dir}">

           <include name="*.jar"/>

       </fileset>  

 

   </path>


<target name="init">

  <mkdir dir="${dest}"/>

</target>

<target name="compile" depends="init">

  <javac srcdir="${src}" destdir="${dest}" includeantruntime="on" encoding="UTF-8">

    <classpath refid="lib_classpath"/>

  </javac>

</target>

<target name="build" depends="compile">

  <jar jarfile="${cfcatest_jar}" basedir="${dest}" encoding="UTF-8">

<manifest>

<attribute name="Main-Class" value="${main.class}"/>

<attribute name="Class-Path" value="lib/servlet-api.jar lib/SADK-3.1.1.3.jar"/>

</manifest>

</jar>

</target>

<target name="run" depends="clean,build">

  

</target>

<target name="clean">

  <delete dir="${dest}" />

  <delete file="cfcatest_jar" />

</target>

<target name="rerun" depends="clean,run">

  <ant target="clean" />

  <ant target="run" />

</target>

<target name="createdoc">

     <delete dir="${doc.dir}" />

     <mkdir dir="${doc.dir}"/>

     <javadoc destdir="${doc.dir}" encoding="UTF-8" docencoding="UTF-8">

      <packageset dir="${src}">

       <include name="**"/>

      </packageset>

     </javadoc>

       </target>

</project>

=====================================================

具体使用的时候可根据实际情况修改 相关  property  XXX的值

1、build.xml放在项目跟目录下

2、代码按照package层级放在项目的src目录下

3、相关类库jar包放在项目的lib目录下

在命令行执行 ant即可编译出:<property name="cfcatest_jar" value="cfcasdk.jar"/> 指定的jar包了

还能自动生成帮助文档哦,简单不:)

本人原创未经许可,可随意转载!

java ant 编译打包build.xml完整配置范例的更多相关文章

  1. android的ant编译打包

    Android本身是支持ant打包项目的,并且SDK中自带一个build.xml文件. 通过该文件,可以对文件进行编译.打包.安装等.并且支持多种方式打包,如debug或者release. 一般的,可 ...

  2. java:JSP(JSPWeb.xml的配置,动态和静态导入JSP文件,重定项和请求转发,使用JSP实现数据库的增删改查实例)

    1.JSP的配置: <%@ page language="java" import="java.util.*" pageEncoding="UT ...

  3. 【ANT】一个简单的ANT生成文件build.xml

    <?xml version="1.0" ?> <project default="test"> <target name=&quo ...

  4. ant+jmeter中build.xml配置详解

  5. java通过maven打包解决xml读取格式失败问题

    <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compi ...

  6. web.xml完整配置

    <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java ...

  7. JAR-使用JAVA命令编译打包一个可执行jar包

    一.开发一个演示项目 项目源代码开发 项目名称叫jar-package-example(其实只是一个文件夹, 用以将演示的所有文件夹和文件存放在其中, 没啥其它作用), 为了方便, 后文统一叫jar- ...

  8. 用ant编译打包时 警告:编码 GBK 的不可映射字符

    原因,参考http://zhidao.baidu.com/question/26901568.html 添加如下的红色一行后编译通过<target name="compile" ...

  9. Java Ant build.xml详解

    1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台   --因为 ...

随机推荐

  1. DOM10-1节点层次

    DOM(问的那个对象模型)是针对HTML和XML文档的API.DOM描绘了一个层次化的节点树,允许开发人员添加.移除和修改页面的一部分. 每个节点都拥有各自的特点.数据和方法,另外和其他节点也存在某种 ...

  2. linux下的各个目录(待填)

    /系统目录 / 下的目录: 1./bin(binary,二进制文件):打开里面会发现全是绿色的文件,也就是可执行文件,而且名字都是系统命令的名字,其实每个系统命令都是一个小的可执行的文件,这些命令都存 ...

  3. Jmeter-接口功能测试

    前言 前面已经讲过了如何用Postman做接口功能测试,本篇主要是用Jmeter来演示如何做接口功能测试,这里就大致说一下Jmeter如何用哈,其余的也不多说了. Jmeter接口功能测试实例 因为在 ...

  4. (动态规划)免费馅饼--hdu--1176

    http://acm.hdu.edu.cn/showproblem.php?pid=1176 免费馅饼 Time Limit: 2000/1000 MS (Java/Others)    Memory ...

  5. C语言中:static与extern对变量和函数的作用

    1.两者对全局变量 static对全局变量,表示定义一个内部变量 extern对全局变量,表示声明一个外部变量 说明: 1.内部变量:定义的变量只能在本文件中访问,不能被其他文件访问. 2.不同文件中 ...

  6. hdu 5099 简单模拟(比较型号)

    http://acm.hdu.edu.cn/showproblem.php?pid=5099 比较两个安卓手机型号,水题 注意点:A is actually implicit and usually ...

  7. nodes 验证码

    一个常见的需求. 知乎上得讨论:http://www.zhihu.com/question/32156977 node-canvas 在mac上安装有问题,可能是我没有sudo 使用了ccap:挺不错 ...

  8. AngularJs 指令中 的Scope属性

    一.概念说明 可以是true. false .哈希对象 {} 1.true 新创建了一个作用域,且继承了父作用域:在初始化的时候,用了父作用域的属性和方法去填充我们这个新的作用域.它和父作用域不是同一 ...

  9. Http TCP/IP协议和socket之间的区别和联系

    总结,TCP/IP是传输层协议,主要解决数据如何在网路中传输,socket是TCP/IP协议的具体实现,是对TCP/IP协议的封装和应用,属于程序员层面,HTTP是应用层协议,应用层协议很多,类似的像 ...

  10. Python自动化开发 - select模块

    介绍: IO-多路复用:监听多个socker对象是否有变化,包括可读.可写.发送错误 Python中的select模块专注于I/O多路复用,提供了select poll epoll三个方法(其中后两个 ...