linux
<!-- 先将工程文件打包 -->
<tar destfile="./ant-project/release/xxxxx-online.tgz"
basedir="./ant-project/dist"compression="gzip">
</tar>
<!-- scp将打包文件上传到linux,停tomcat,删除文件,解压新包 -->
<scp file="./ant-project/release/xxxxx-online.tgz"
todir="root:xxxxxap@172.16.131.101:/xxxxx/ap/bin/" trust="true"/>
<sshexec host="172.16.131.101" username="tomcat" password="tomcat" command="
cd /xxxxx/ap/bin;shutdown.sh;rm -rf online;tar zxvf xxxxx-online.tgz;rm -rf online2;
cp -rf online online2;rm -rf online3;cp -rf online online3;startup.sh" trust="true" />
<!-- 解压的shell文件,赋予执行权限 -->
<scp file="./ant-project/release/xxxxx-job.tgz"
todir="root:xxxxxap@172.16.131.101:/xxxxx/ap/"
trust="true"/>
<sshexec host="172.16.131.101" username="xxxxx" password="xxxxx"
command="cd /xxxxx/ap/;tar zxvf xxxxx-job.tgz;cd job/bin;chmod 755 *.sh;cd ../lib;chmod 755 *.dat" trust="true"/>
<!-- 重启tomcat -->
<target name="restart_tomcat">
<sshexec host="172.16.131.101" username="tomcat" password="tomcat"
command="shutdown.sh;sleep 2;startup.sh" trust="true" />
</target>
windows
<project default="tomcat.start" name="anchannel" basedir=".">
<property file="build.properties" />
<target name="init">
<delete dir="${temp.dir}" />
<mkdir dir="${temp.dir}" />
</target>
<!-- 从CVS SERVER上取的项目 -->
<target name="checkout" depends="init">
<!-- 生成CVS连接的权限信息 -->
<cvspass cvsroot="${cvsroot}" password="${cvs.password}" passfile="${cvs.passfile}" />
<echo message="开始下载src" />
<cvs cvsroot="${cvsroot}" command="checkout" package="${cvs.package.src}"
dest="${temp.dir}/cvs_dir"
passfile="${cvs.passfile}"/>
<echo message="开始下载html" />
<cvs cvsroot="${cvsroot}" command="checkout" package="${cvs.package.html}"
dest="${temp.dir}/cvs_dir"
passfile="${cvs.passfile}" />
<echo message="开始下载config" />
<cvs cvsroot="${cvsroot}" command="checkout" package="${cvs.package.config}"
dest="${temp.dir}/cvs_dir"
passfile="${cvs.passfile}" />
</target>
<!-- 编译文件 -->
<target name="compile" depends="checkout">
<echo message="开始编译" />
<mkdir dir="${temp.dir}/classes" />
<javac srcdir="${temp.dir}/cvs_dir/${cvs.package.src}" destdir="${temp.dir}/classes" failonerror="false"
debug="on" debuglevel="lines,vars,source" fork="yes" memoryInitialSize="256m" memoryMaximumSize="1024m">
<classpath>
<fileset dir="${lib.compile.dir}" includes="*.jar" />
<fileset dir="${lib.project.dir}" includes="*.jar" />
</classpath>
<include name="**/*.*" />
<exclude name="test/**/*.*" />
<exclude name="**/test/*.*" />
<exclude name="example/**/*.*" />
</javac>
<echo message="编译完成" />
</target>
<!-- 停止tomcat -->
<target name="tomcat.stop" depends="compile">
<java jar="${tomcat.dir}/bin/bootstrap.jar" fork="true">
<jvmarg value="-Dcatalina.home=${tomcat.dir}" />
<arg line="stop" />
</java>
<delete dir="${project.dir}" />
<mkdir dir="${project.dir}" />
</target>
<target name="tomcat.deploy" depends="tomcat.stop">
<copy todir="${project.dir}\\WEB-INF\\classes" overwrite="true">
<fileset dir="${temp.dir}/classes">
<include name="**/*.*" />
</fileset>
</copy>
<copy todir="${project.dir}" overwrite="true">
<fileset dir="${temp.dir}/cvs_dir/${cvs.package.html}">
<include name="**/*.*" />
</fileset>
</copy>
<copy todir="${project.dir}\\WEB-INF\\classes" overwrite="true">
<fileset dir="${temp.dir}/cvs_dir/${cvs.package.config}">
<include name="**/*.*" />
</fileset>
</copy>
<copy todir="${project.dir}\\WEB-INF\\lib" overwrite="true">
<fileset dir="${lib.project.dir}">
<include name="**/*.*" />
</fileset>
</copy>
</target>
<!-- 启动tomcat -->
<target name="tomcat.start" depends="tomcat.deploy">
<java jar="${tomcat.dir}/bin/bootstrap.jar" fork="true">
<jvmarg value="-Dcatalina.home=${tomcat.dir}" />
</java>
<echo message="Ant任务完成" />
</target>
<!--
<target name="tomcat.debug">
<java jar="${tomcat.dir}/bin/bootstrap.jar" fork="true">
<jvmarg value="-Dcatalina.home=${tomcat.dir}" />
<jvmarg value="-Xdebug" />
<jvmarg value="-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" />
</java>
</target>
<target name="stopTomcat">
<exec dir="${tomcat.dir}/bin" executable="cmd.exe" os="Windows 2003">
<arg line="/c shutdown.bat" />
</exec>
</target>
<target name="startTomcat">
<exec dir="${tomcat.dir}/bin" executable="cmd.exe" os="Windows 2003">
<arg line="/c startup.bat" />
</exec>
</target>
-->
</project>
分享到:
相关推荐
本文将深入讲解如何利用Ant来实现Java项目的自动构建和部署,包括对J2ME和J2EE项目的处理。我们将通过两个简单实例,一步步引导你熟悉Ant的使用。 首先,理解Ant的基本概念是至关重要的。Ant是一个基于XML的构建...
本教程将详细介绍如何利用Ant在Eclipse集成开发环境中部署远程Tomcat服务器上的Web应用。 首先,理解Ant的核心概念至关重要。Ant基于XML,通过任务(task)来执行各种构建操作。在`build.xml`文件中定义这些任务,...
Ant的优势在于其灵活性和易用性,它使用XML(可扩展标记语言)来描述构建过程,这种描述性语言允许开发者定义编译源代码、运行测试、打包成JAR文件、部署到服务器等任务的具体步骤。 通过学习Ant,Java开发者可以...
在IT行业中,自动部署是提高效率、减少人为错误的关键实践。...通过"ant_shell自动部署",IT团队能够更高效、稳定地管理软件部署,提高开发运维的协同效率,降低系统风险,是现代软件工程不可或缺的一部分。
"ant自动发布工程"是指利用Ant的脚本化特性,实现对Java工程的自动化发布流程,极大地提高了开发效率和减少了手动操作的错误。下面将详细阐述Ant在自动发布工程中的核心知识点。 1. **Ant基本概念** - **构建文件...
标题中的“ant远程上传并部署tomcat”是指使用Apache Ant工具执行自动化构建任务,将本地的Web应用(如WAR或EAR文件)传输到远程Linux服务器的Tomcat应用服务器上进行部署,并随后重启Tomcat服务以使更改生效。Ant是...
这里我们将详细介绍如何设置SVN服务器,实现代码的自动更新、编译和部署,以及如何利用Ant工具进行自动化构建。 1. **安装与配置SVN服务器** - 首先,你需要下载并安装VisualSVN Server,这是一个在Windows上运行...
Java Ant是一种基于Java的构建工具,它被广泛用于自动化Java项目的构建、测试和部署过程。Ant以其XML格式的构建文件(build.xml)为特色,允许开发者定义任务序列,这些任务可以包括编译源代码、创建JAR文件、打包...
- 部署阶段:Ant可以使用特定的应用服务器任务(如Tomcat的`deploy`任务)将WAR包上传到服务器。 4. **Apache CXF与Ant**: - CXF是一个流行的Java EE WebService框架,支持SOAP和RESTful服务。 - 使用Ant与CXF...
【标题】"各服务器部署WAR"涉及的知识点主要围绕Java Web应用的部署,特别是将WAR(Web ARchive)文件部署到不同的服务器环境。WAR文件是Java Web应用程序的标准打包格式,它包含所有必要的资源,如Java类、HTML、...
11. **持续集成(Continuous Integration,CI)**:Ant也常用于CI服务器,如Jenkins,自动执行构建、测试和部署流程。 总结起来,Ant作为Java项目管理的强大工具,可以帮助开发者自动化处理项目的构建过程,包括...
例如,可以演示如何从零开始构建一个完整的Java Web应用,包括编写源代码、编写测试用例、构建、打包以及部署到服务器等全过程。 **Ant在开发项目中的应用** 在大型Java开发项目中,Ant的应用非常广泛。它可以极大...
本文将深入探讨如何利用JEECG实现这些基本功能,并详细讲解如何将项目部署到服务器上。 首先,让我们了解一下JEECG平台的核心特点。JEECG采用MVC设计模式,支持Spring Boot、MyBatis等主流框架,内置了丰富的插件,...
Java项目中的Ant打包脚本是开发过程中的一个重要环节,它使得开发者能够自动化构建、测试和部署应用程序。Ant是一个基于XML的构建工具,由Apache软件基金会开发,它在Java社区广泛使用,替代了早期的Makefile,因为...
在这个特定的Demo中,Ant被用作WebLogic的部署工具,它可以自动打包、构建和部署应用程序到WebLogic服务器,提高开发和运维的效率。 【主要知识点】: 1. **Apache Ant**:Ant是一个开源的构建工具,类似于Make或...
5. 部署:Ant可以将构建结果发布到远程服务器,实现自动化部署。 三、Ant的优点 1. 平台无关性:基于Java的Ant可以在任何安装了Java的平台上运行。 2. 可扩展性:Ant提供了丰富的内置任务,同时允许用户自定义...