ant基础

<?xml version="1.0" encoding="utf-8" ?>
<project name="XXXServer" basedir="." default="package">
    <property environment="env" />
    <property name="drools.dir" value="F:/drools-distribution-6.1.0.Final/binaries" />
    <property name="classes.dir" value="bin" />
    <property name="lib.dir" value="lib" />
    <property name="src.dir" value="src/main/java" />
    <property name="resources.dir" value="src/main/resources" />
    <property name="output.dir" value="out" />
    <property name="conf.dir" value="conf" />
    <property name="all.dir" value="all" />
    <property name="pack.name" value="eiServer" />

    <path id="compile.classpath">
        <fileset dir="${lib.dir}">
            <exclude name="**/.svn" />
        </fileset>
        <fileset dir="${drools.dir}"/>
    </path>

    <target name="clean">
        <delete dir="${output.dir}" />
        <delete dir="${classes.dir}" />
        <delete dir="${all.dir}" />
    </target>

    <target name="compile" depends="clean">
        <mkdir dir="${classes.dir}" />
        <javac encoding="utf-8" srcdir="${src.dir}" debug="true" includeantruntime="false" classpathref="compile.classpath" destdir="${classes.dir}" />
    </target>

    <target name="package" description="build" depends="compile">
        <mkdir dir="${all.dir}" />
        <mkdir dir="${all.dir}/rules" />
        <copy todir="${all.dir}/rules">
                    <fileset dir="${resources.dir}/rules" />
        </copy>
        <copy todir="${all.dir}">
                    <fileset dir="${classes.dir}" />
        </copy>
        <jar destfile="${output.dir}/${pack.name}.jar" basedir="${all.dir}">
            <manifest>
                <attribute name="Main-Class" value="com.xxx.xxx.EiServer" />
            </manifest>
            <metainf dir="${resources.dir}/META-INF" />
        </jar>
        <zip destfile="${output.dir}/${pack.name}.zip" basedir="src"/>
    </target>
</project>

<metainf>用于把dir下面的文件复制到jar包的meta-inf文件夹下
 basedir="${all.dir}是打包成jar的目录,一般是bin文件夹,现在需要把rules文件也打包进去,于是创建一个all文件夹,并把bin和rulescopy过去all,然后再打包
时间: 2024-11-25 09:34:41

ant基础的相关文章

Maven、gradle、Ant、Eclipse IDE

Maven.gradle.Ant.Eclipse IDE之间的关系 http://wenku.baidu.com/view/d33208810912a21615792910.html?from=search 觉得应该很多同学有和我一样的疑惑,所以分享下. 1.使用github上的开源项目时是不是经常发现有个叫maven的东西? 2.第一次使用Android studio时是不是要下载一个gradle的玩意? 折腾了一天,想导入下github的客户端源码.当然现在还没成功...各种看不懂的错误.郁

用jenkins搭建android自动打包环境

这里假设你已经搭建了jenkins的环境.否则,请阅读我的另一篇文章: http://my.oschina.net/u/930967/blog/298980 其实那个文章里面有用的就两句话的事儿,还是直接写在这里吧 jenkins是一个java web项目,可以去官网下载war包,放在tomcat的webapps下就能运行. 访问localhost:8080/jenkins进入 步入正题 任何一个开发工具,都提供了命令行工具.比如android用的是ant.java有maven.还有xcode,

Maven插件maven-antrun-plugin的使用

以下引用官方的介绍http://maven.apache.org/plugins/maven-antrun-plugin/: 一.什么是maven-antrun-plugin? 该插件提供从Maven内运行Ant任务的功能.您甚至可以将您的Ant脚本嵌入POM! 这个插件不是提供污染POM的手段意图,因此它鼓励所有Ant任务移动到build.xml文件并使用Ant的POM的<ant/> task调用它(或者说所有在build.xml文件的Ant任务移动到POM中,并使用<ant/>

java web 开发三剑客 -------电子书

Internet,人们通常称为因特网,是当今世界上覆盖面最大和应用最广泛的网络.根据英语构词法,Internet是Inter + net,Inter-作为前缀在英语中表示“在一起,交互”,由此可知Internet的目的是让各个net交互.所以,Internet实质上是将世界上各个国家.各个网络运营商的多个网络相互连接构成的一个全球范围内的统一网,使各个网络之间能够相互到达.各个国家和运营商构建网络采用的底层技术和实现可能各不相同,但只要采用统一的上层协议(TCP/IP)就可以通过Internet

Ant学习-001-ant 基础知识及windows环境配置

一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.TestNG等搭建持续集成测试开发环境,从而高效.高质量的构建产品. Ant 有以下一些优点: 跨平台,可移植.Ant 是 Java 语言编写的,所以有很好的跨平台性和可移植性,无论是在 windows.Linux,还是 mac. 操作简单. Ant 是由一个内置任务和可选任务组成的,运行时需要一个构

Ant入门基础教程

一 Ant 介绍 Ant是构建工具,用来实现软件的自动化的构建,类似于VisualStudio的project文件,Linux上构建C++的makefile,Ant通常用来构建Java程序. Ant是基于XML的文件,所以更容易阅读:Ant是用Java实现的,本身支持跨平台:Ant基于插件的方式开发,本身内置了常用的大部分的插件,而且第三方的扩展也很容易:Ant除了用来构建Java程序,也可以用来构建其他的任何程序,例如C++等. 和Ant类似,能够支持跨平台的其他的一些非常优秀的构建工具有Ma

Ant脚本简介与基础知识

转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6624003.html  一:Ant是什么 Ant相当于Linux环境下的shell脚本,只不过是用xml文档来编写的.我们知道,在linux环境中,可以通过编写shell脚本,封装一系列繁琐而日常需要经常重复的操作.在需要进行这些操作时,只需运行这个脚本就可以批处理这些操作了.Ant脚本也是一样,只不过它一般是为了方便Java项目的编译.运行.测试.打包等工作服务的. 我们知道,日常开发工作中,一个项目除了

[Java] Apache Ant 构建基础教程

环境:Ubuntu 12.04, java 1.7.0, ant 1.8.2. 前言 Apache Ant 是一个软件自动化构建工具,构建过程包括编译.测试和部署等.它和 Make 工具相似,但由 Java 实现,所以要求 Java 运行环境,非常适合构建 Java 程序. Ant 和 Make 明显不同之处在于 Ant 使用 XML 来表述构建过程与依赖关系,而 Make 使用 Makefile 格式文件.Ant 默认的构建文件名为 build.xml.每一个 build.xml 文件包含一个

salesforce零基础学习(九十二)使用Ant Migration Tool 实现Metadata迁移

我们在做项目时经常会使用changeset作为部署工具,但是某些场景使用changeset会比较难操作,比如当我们在sandbox将apex class更改名字想要部署到生产的org或者其他环境的org,使用changeset是没法实现的,这个时候我们需要使用Ant Migration Tool还是更好的. salesforce基于metadata进行管理,Ant Migration Tool 是一个基于 Java/Ant的命令行工具用于将metadata从本地迁移至Sales Org. Mig