build.xml配置编译打包过程(转)

工程目录如下,使用eclipse中的ant对此工程进行编译打包:

MonServer

| --------src

|            |--------com

|            |--------log4j.properties

|

| --------config

| --------lib

| --------log

| --------sh

| --------startMon.sh

[xhtml] view plaincopyprint?<?xml version="1.0"?>  
<project name="MonServer" default="all" basedir=".">  
    <!-- source code dir-->  
    <property name="src.dir" value="src">  
    </property>  
    <property name="config.dir" value="config">  
    </property>  
    <property name="lib.dir" value="lib">  
    </property>  
    <property name="log.dir" value="log">  
    </property>  
    <property name="sh.dir" value="sh">  
    </property>  
  
    <!-- 需要引入第3方jar包才能编译通过java文件并生成class文件,并且在target compile中应用classpath -->  
    <path id="classpath">  
        <fileset dir="${lib.dir}">  
            <include name="**/*.jar" />  
        </fileset>  
    </path>  
    <!-- build dir-->  
    <property name="build.dir" value="build">  
    </property>  
    <property name="build.classes" value="${build.dir}/classes">  
    </property>  
    <property name="build.config" value="${build.dir}/config">  
    </property>  
    <property name="build.lib" value="${build.dir}/lib">  
    </property>  
    <property name="build.log" value="${build.dir}/log">  
    </property>  
    <property name="build.sh" value="${build.dir}/sh">  
    </property>  
  
    <!-- remove all generated files -->  
    <target name="clean" description="remove all generated files">  
        <delete dir="${build.dir}">  
        </delete>  
    </target>  
  
    <!-- create the build dir, and copy [config,lib,sh] dir files-->  
    <target name="prepare">  
        <mkdir dir="${build.dir}" />  
        <mkdir dir="${build.classes}" />  
        <mkdir dir="${build.config}" />  
        <mkdir dir="${build.lib}" />  
        <mkdir dir="${build.log}" />  
        <mkdir dir="${build.sh}" />  
  
        <copy todir="${build.config}">  
            <fileset dir="${config.dir}" includes="*.*">  
            </fileset>  
        </copy>  
  
        <copy todir="${build.lib}">  
            <fileset dir="${lib.dir}" includes="*.jar">  
            </fileset>  
        </copy>  
        <copy todir="${build.sh}">  
            <fileset dir="${sh.dir}" includes="*.sh">  
            </fileset>  
        </copy>  
        <!-- 复制工程根目录下的文件到build目录下,如:startMon.sh-->  
        <copy todir="${build.dir}">  
            <fileset dir="." includes="*.sh">  
            </fileset>  
        </copy>  
    </target>  
  
    <!--compile java files, and copy other properties files -->  
    <target name="compile" depends="prepare" description="compile all source code">  
        <javac srcdir="${src.dir}" destdir="${build.classes}">  
            <classpath refid="classpath">  
            </classpath>  
            <compilerarg line="-encoding gbk" />  
        </javac>  
  
        <copy todir="${build.classes}">  
            <fileset dir="${src.dir}" includes="*.properties">  
            </fileset>  
        </copy>  
        <!--打包-->  
        <zip destfile="MonServer.zip" basedir="${build.dir}">  
        </zip>  
    </target>  
    <!-- 先编译打包,再删除目录-->  
    <target name="all" depends="compile,clean" description="clean,compile">  
    </target>  
</project>  
<?xml version="1.0"?> 
<project name="MonServer" default="all" basedir="."> 
<!-- source code dir--> 
<property name="src.dir" value="src"> 
</property> 
<property name="config.dir" value="config"> 
</property> 
<property name="lib.dir" value="lib"> 
</property> 
<property name="log.dir" value="log"> 
</property> 
<property name="sh.dir" value="sh"> 
</property>

<!-- 需要引入第3方jar包才能编译通过java文件并生成class文件,并且在target compile中应用classpath --> 
<path id="classpath"> 
<fileset dir="${lib.dir}"> 
<include name="**/*.jar" /> 
</fileset> 
</path> 
<!-- build dir--> 
<property name="build.dir" value="build"> 
</property> 
<property name="build.classes" value="${build.dir}/classes"> 
</property> 
<property name="build.config" value="${build.dir}/config"> 
</property> 
<property name="build.lib" value="${build.dir}/lib"> 
</property> 
<property name="build.log" value="${build.dir}/log"> 
</property> 
<property name="build.sh" value="${build.dir}/sh"> 
</property>

<!-- remove all generated files --> 
<target name="clean" description="remove all generated files"> 
<delete dir="${build.dir}"> 
</delete> 
</target>

<!-- create the build dir, and copy [config,lib,sh] dir files--> 
<target name="prepare"> 
<mkdir dir="${build.dir}" /> 
<mkdir dir="${build.classes}" /> 
<mkdir dir="${build.config}" /> 
<mkdir dir="${build.lib}" /> 
<mkdir dir="${build.log}" /> 
<mkdir dir="${build.sh}" />

<copy todir="${build.config}"> 
<fileset dir="${config.dir}" includes="*.*"> 
</fileset> 
</copy>

<copy todir="${build.lib}"> 
<fileset dir="${lib.dir}" includes="*.jar"> 
</fileset> 
</copy> 
<copy todir="${build.sh}"> 
<fileset dir="${sh.dir}" includes="*.sh"> 
</fileset> 
</copy> 
<!-- 复制工程根目录下的文件到build目录下,如:startMon.sh--> 
<copy todir="${build.dir}"> 
<fileset dir="." includes="*.sh"> 
</fileset> 
</copy> 
</target>

<!--compile java files, and copy other properties files --> 
<target name="compile" depends="prepare" description="compile all source code"> 
<javac srcdir="${src.dir}" destdir="${build.classes}"> 
<classpath refid="classpath"> 
</classpath> 
<compilerarg line="-encoding gbk" /> 
</javac>

<copy todir="${build.classes}"> 
<fileset dir="${src.dir}" includes="*.properties"> 
</fileset> 
</copy> 
<!--打包--> 
<zip destfile="MonServer.zip" basedir="${build.dir}"> 
</zip> 
</target> 
<!-- 先编译打包,再删除目录--> 
<target name="all" depends="compile,clean" description="clean,compile"> 
</target> 
</project>

转自 http://zhaiyue-program.iteye.com/blog/1731714

时间: 2024-11-08 01:51:29

build.xml配置编译打包过程(转)的相关文章

Ant自动编译打包&amp;发布 android项目

Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自动编译打包了. 1  Ant自动编译打包android项目 1.1   Ant安装 ant的安装比较简单,下载ant压缩包  http://ant.apache.org  (最新的为1.9.3版本),下载之后将其解压到某个目录(本人解压到E:\Program Files\apache-ant-1.9.3) ,然后配

Andorid进阶7—— Ant自动编译打包&amp;发布 android项目

http://www.cnblogs.com/tt_mc/p/3891546.html Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自动编译打包了. 1  Ant自动编译打包android项目 1.1   Ant安装 ant的安装比较简单,下载ant压缩包  http://ant.apache.org  (最新的为1.9.3版本),下载之后将其解压到某个目录(

(转载)Ant自动编译打包android项目

1  Ant自动编译打包android项目 1.1   Ant安装 ant的安装比较简单,下载ant压缩包  http://ant.apache.org  (最新的为1.9.3版本),下载之后将其解压到某个目录(本人解压到E:\Program Files\apache-ant-1.9.3) ,然后配置环境变量(新建ANT_HOME环境变量,值为ant所在的目录,然后将ANT_HOME/bin添加到path中),如图: 打开命令行工具,输入 ant  -version ,如果出现如下结果,说明an

Ant自动编译打包android项目(转载)

1.1   Ant安装 ant的安装比较简单,下载ant压缩包  http://ant.apache.org  (最新的为1.9.3版本),下载之后将其解压到某个目录(本人解压到E:\Program Files\apache-ant-1.9.3) ,然后配置环境变量(新建ANT_HOME环境变量,值为ant所在的目录,然后将ANT_HOME/bin添加到path中),如图: 打开命令行工具,输入 ant  -version ,如果出现如下结果,说明ant 安装成功.  1.2   为Androi

Android中使用Ant编译打包

本文参照自:http://hubingforever.blog.163.com/blog/static/171040579201342982553107/ 一.环境配置 1.1.配置ant 首先从ant 官网可下载ant,接着解压ant的包到本地目录,紧接着在环境变量中设置ANT_HOME为你的ant所在目录,然后把%ANT_HOME%/bin加到你系统环境的path,最后在命令行执行ant命令测试其是否已经添加到了系统path中. 二.基本使用 2.1.使用android create创建项目

Ant默认配置文件不是build.xml该如何编写命令进行编译打包

Ant的构件文件是基于XML编写的,默认名称为build.xml. ant命令默认寻找build.xml文件.若文件名为hello.xml时,读者还需要对命令做少许改变, 改为:ant –f hello.xml . ant –buildfile hello.xml 或ant –file hello.xml. 原文地址:https://www.cnblogs.com/yuanchaoyong/p/11769638.html

项目打包文件build.xml

Make命令其实就是一个项目管理工具,而Ant所实现功能与此类似.像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷.最初Ant开发者在开发跨平台的应用时,用样也是基于这些缺陷对Ant做了更好的设计. Ant 与 makefileMakefile有一些不足之处,比如很多人都会碰到的烦人的Tab问题.最初的Ant开发者多次强调”只是我在Tab前面加了一个空格,所以我的命令就不能执行”.有一些工具在一定程度上解决了这个问题,但还是有很多其他的问题.An

POM文件编译打包配置整理

1.整个打包过程就是插件添加过程,添加build插件 2.指定testng.xml路径的编译插件:执行mvn clean package <build> <finalName>test</finalName> <plugins> <!--编译打包配置--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-s

Ambari部署,编译,打包过程中遇到的问题

Ambari部署,编译,打包过程中遇到的问题 1.错误: [ERROR] Failed to execute goal com.github.goldin:copy-maven-plugin:0.2.5:copy (create-archive) on project ambari-agent: Processing <resource> [Target path(s) [/home/bdms/workspacebaribari-agent/targetb], directory [http: