1 shell 脚本自动部署到服务器,脚本有点笨拙,以后可以改进
#!/bin/sh #更新svn /opt/project_name 项目svn目录 svn update /opt/project_name echo "update success =======" echo "------------------ant begin--- ant在项目中-------------" ant -f /opt/project_name/ant-build.xml echo "--deleting zhe project last version------" #--删除以前部署的项目 rm -rf /opt/project/project_name/ echo "complete delete last version ---" #-- 移动编译好的项目到工程目录中 mv /opt/uc_master/build/WebRoot /opt/project/project_name echo "--deploy project complete SUCESS -------" #等待回车关闭 窗口 read
1 ant打发布包实例:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!--basedir="." 当前目录为工作目录 --> <project basedir="." name="rc" default="test"> <property environment="env" /> <property name="target" value="1.7" /> <property name="source" value="1.7" /> <property name="src" value="${basedir}/src" /> <property name="build" value="${basedir}/build" /> <property name="webroot.dir" value="WebRoot" /> <property name="web.dir" value="${webroot.dir}/WEB-INF" /> <property name="lib.dir" value="${web.dir}/lib" /> <property name="tomcat.lib" value="D:\Program Files\apache-tomcat-7.0.28\lib" /> <!-- 不同的机器改成对应的路径 --> <!--个人机器的工程名称,需要修改--> <property name="Webcontent.dir" value="WebContent" /> <echo message="${lib.dir}" /> <path id="rc.classpath"> <fileset dir="${lib.dir}"> <include name="*.jar" /> </fileset> <!-- All Jars in /tomcatlib --> <fileset dir="${tomcat.lib}"> <include name="*.jar" /> </fileset> </path> <!--创建目录结构 ,并且拷贝源目录下的文件到build下面 --> <target name="init"> <mkdir dir="${build}/${webroot.dir}" /> <mkdir dir="${build}/${web.dir}" /> <mkdir dir="${build}/${web.dir}/classes" /> <mkdir dir="${build}/${lib.dir}" /> <copy todir="${build}/${webroot.dir}"> <fileset dir="${Webcontent.dir}"> <include name="WEB-INF/**" /> <include name="**" /> </fileset> </copy> </target> <!--删除目录结构 --> <target name="clean"> <delete dir="${build}/${webroot.dir}" /> <delete dir="${build}/${web.dir}" /> <delete dir="${build}/${web.dir}/classes" /> <delete dir="${build}/${lib.dir}" /> <delete dir="${build}/project.war" /> </target> <target depends="clean,init" name="build"> <echo message="${ant.project.name}: ${ant.file}" /> <copy todir="${build}/${web.dir}/classes"> <!-- 复制src下面的配置文件到classes目录 --> <fileset dir="${src}"> <include name="*.xml" /> <include name="*.properties" /> </fileset> </copy> <javac debug="true" debuglevel="lines,vars" destdir="${build}/${web.dir}/classes" encoding="utf-8" classpathref="rc.classpath" includeAntRuntime="false"> <!--可以写多个src标签 --> <src path="${src}" /> </javac> </target> <!--打war包 --> <target name="antwar" depends="build" description="打war包"> <war warfile="${build}/project.war" webxml="${build}/${web.dir}/web.xml"> <lib dir="${build}/${lib.dir}"> <include name="**" /> </lib> <classes dir="${build}/${web.dir}/classes" /> <fileset dir="${build}/${webroot.dir}" /> </war> </target> <!--测试用的--> <target name="test"> <echo message="The base dir is:${basedir}/src"/> </target> </project>
2 ant打jar包的实例
<?xml version="1.0" encoding="GB2312" standalone="no"?> <project basedir="." default="usage" name="CountHadoop"> <!-- ====此处需要修改====工程名 --> <!-- 工程名,没有被引用,可以不改 --> <property name="project-name" value="CountHadoop"/> <!-- ====此处需要修改====.jar文件名 --> <property name="lib" value="lib"/> <!-- lib--> <property name="src" value="src"/> <!-- src--> <property name="tar" value="bin"/> <!-- bin --> <property name="jar-file-name" value="${project-name}.jar"/> <property name="main-class" value="org.tony.mr.test.WordCount2"/> <!-- ====此处需要修改====main-class--> <!--相关的jar包 --> <path id="Third-Part Lib"> <fileset dir="${lib}"> <include name="**/*.jar"/> </fileset> </path> <target description="Build file usage info (default task)" name="usage"> <echo message=" "/> <echo message=" ${project-name} "/> <echo message="-------------------------------------------------------"/> <echo message=" Available Targets:"/> <echo message=" compile - Compiles the source code"/> <echo message=" clean - Delete class files and .jar file"/> <echo message=" jar - Generate an .jar for source code"/> <echo message=" run - Execute Main-Class"/> <echo message="-------------------------------------------------------"/> </target> <!--创建bin目录--> <target name="prepare"> <mkdir dir="${tar}"/> </target> <!--删除bin目录下的所有目录和文件--> <target name="clean"> <delete dir="${tar}"/> <delete file="${jar-file-name}"/> </target> <!--拷贝src下的所有目录到bin中 --> <target name="copy-res"> <copy todir="${tar}"> <fileset dir="${src}"> <exclude name="**/*.java"/> </fileset> </copy> </target> <target depends="clean,prepare,copy-res" name="compile"> <javac debug="true" deprecation="true" destdir="${tar}" failonerror="true" srcdir="${src}"> <classpath refid="Third-Part Lib"/> </javac> </target> <!-- 注意:classpath="${tar}" 一定要加上,否则会报"java.lang.NoClassDefFoundError"的错误!--> <!-- <target depends="compile" name="run"> <java classname="${main-class}" classpath="${tar}" fork="true" maxmemory="256m"> <classpath refid="Third-Part Lib"/> </java> </target> --> <!--Main-Class:运行的主类, Class-Path:相关的jar文件--> <target depends="compile" name="jar"> <pathconvert property="mf.classpath" pathsep=" "> <path refid="Third-Part Lib" /> <flattenmapper /> </pathconvert> <jar basedir="${tar}" destfile="${jar-file-name}"> <manifest> <attribute name="Main-Class" value="${main-class}"/> <attribute name="Class-Path" value="${mf.classpath}"/> </manifest> </jar> </target> </project>
相关推荐
Ant 使用详细介绍 Ant 是什么? Ant 是一个构建工具,它可以帮助我们将项目开发过程中需要完成的各种步骤组织起来,通过一个简易的方式来构建整个项目。Ant 究竟能做什么呢?这取决于 Ant 的任务(Task),Ant 有...
"Ant使用指南.pdf"和"Ant.pdf"可能是更全面的Ant使用手册,包含详细的API文档和使用案例,帮助开发者深入理解Ant的各个方面。 总的来说,Ant是一个强大的工具,通过学习以上文档,初学者能够掌握Ant的基础和进阶...
这个“Ant使用指南”涵盖了Ant的基本概念、配置、任务和实战应用,旨在帮助开发者更好地理解和使用Ant。 1. **Ant简介** - Ant是一个基于Java的构建工具,其设计目标是简化Java项目的构建过程,通过XML描述构建...
通过阅读"ant指南"和"ant使用教程",你将深入理解Ant的工作原理,学会编写和执行Ant构建文件,从而提高Java项目的构建效率。不论你是新手还是经验丰富的开发者,这些资源都将为你的项目管理提供有力支持。
在"Apache Ant 使用指南"这本书中,你可能会学习到以下关键知识点: 1. **Ant基本概念**:了解Ant的基本结构,包括项目(Project)、目标(Target)、任务(Task)和属性(Property)。项目是构建的顶级容器,目标...
- **属性(Properties)**:Ant支持定义和使用属性,类似于变量,可以用于在整个构建文件中传递值。 - **任务(Tasks)**:Ant提供了一系列内置的任务,如`<javac>`用于编译Java源码,`<copy>`用于复制文件,`...
### ANT使用指南详解 #### 一、导言 Apache Ant 是一款开源的Java构建工具,类似于传统的Unix Make工具。Ant采用XML格式来定义构建过程,提供了丰富的任务(task)集合,适用于自动化编译、测试和部署Java应用程序。...
### ant使用教程 #### 一、Ant简介 1. **什么是Ant** - Ant是一款用于自动化构建过程的软件工具,最初由Apache Software Foundation开发。它主要用于编译、测试和部署Java应用程序,支持跨平台使用,因为它是用...
### ant使用手册ANT使用指南 #### 一、引言 Ant是一种流行的开源构建工具,用于自动化软件项目的构建过程。尤其适用于Java项目,但它也可以用于非Java项目。由于Ant的灵活性和易用性,它在Java开发者社区中迅速...
在“Ant使用指南”中,我们将深入探讨以下关键知识点: 1. **Ant的基本概念**:首先,你需要理解Ant的核心概念,包括构建文件、目标、任务和属性。构建文件是Ant工作的蓝图,定义了一系列的目标和任务,而任务是Ant...
### Ant使用指南-Ant入门手册 #### 一、Ant是什么? Apache Ant 是一款开源的 Java 构建工具,它的名字来源于“Another Neat Tool”的首字母缩写。Ant 能够帮助开发者自动化构建过程,包括编译源代码、运行测试、...
Ant是Apache软件基金会下的一个Java项目,它是一个强大的构建工具,...通过阅读《Ant使用指南》PDF文件,您将能深入理解并熟练运用Ant进行项目构建。无论您是新手还是经验丰富的开发者,都能从中受益,提升开发效率。
这个“ant使用手册(中文教程)”涵盖了Ant的基本概念、配置语法、任务使用以及在Java项目中的实际应用。 1. **Ant基本概念** - **构建文件**:Ant的构建过程通过一个名为`build.xml`的XML文件进行描述,该文件...
在"apache ant使用例子"中,我们可以通过一个名为"HelloAnt"的MyEclipse工程实例来学习如何使用Ant。MyEclipse是Eclipse IDE的一个扩展,特别适合于Java EE项目的开发,它内置了对Ant的支持,使得我们可以方便地在...
全面的ant使用手册~!内容如下: · Ant 生成文件是如何构造的 · 如何从命令行以及从Eclipse 内运行Ant · 如果通过编译源代码、创建 JAR 文件以及时间戳文件(以识别每次生成过程的输出)来生 成简单的 Java 项目 ...
### ant使用帮助文档 #### 知识点概览 1. **Ant的简介与功能** 2. **安装Ant的基本步骤** 3. **配置环境变量的方法** 4. **验证Ant是否安装成功** 5. **配置数据库链接信息** 6. **创建数据库表及与Ant项目的关联*...
### Ant使用指南:Java项目构建的利器 #### 引言 Apache Ant,作为一个基于Java的构建工具,由James Duncan Davidson创建,旨在简化Java项目的构建流程。Ant,全称Another Neat Tool,以其跨平台特性、易用性及...