公司最近要求我将本地项目编译,并发布到服务器上,在网上看了很久,只找到了有关ANT相关操作的,现将代码贴出希望到时候有人需要.
我还有一个问题,希望名位大虾帮我解决,如何利用ANT从TFS上自动获取项目源码?
<?xml version="1.0" encoding="utf-8"?>
<project name="xbcw" default="deploy">
<!--
<property name="dist" value="E:/txin0814/workspace1/myceaas/dist" />
-->
<property name="context-path" value="xbcw" />
<!-- 必须保证TOMCAT在运行状态 服务器IP 端口 -->
<property name="tomcat.manager.url" value="http://192.168.1.68:9090/manager/html" />
<!-- TOMCAT用户名 -->
<property name="tomcat.manager.username" value="admin" />
<!-- TOMCAT密码 -->
<property name="tomcat.manager.password" value="" />
<!--//////////////////////////////////////////////////////// -->
<!-- 建立目录结构
project
... src JAVA源码编辑目录
... WebRoot web文件存放地方
... WEB-INF
...lib jar包(类库)存放目录
... build 编译生成的class文件存放目录
... dist war和javadoc存放目录
... build.xml ant脚本
-->
<property name="src.dir" value="src" />
<property name="lib.dir" value="WEB-INF/lib" />
<property name="webRoot.dir" value="WebRoot" />
<property name="web-inf.dir" value="${webRoot.dir}/WEB-INF" />
<property name="build.dir" value="build" />
<property name="dist.dir" value="dist" />
<!-- 初始化 classpath -->
<path id="project.classpath">
<fileset dir="${webRoot.dir}/${lib.dir}">
<include name="**/*.jar" />
</fileset>
<pathelement location="${build.dir}/classes" />
<pathelement path="${java.class.path}" />
</path>
<!-- 删除之前的目录结构 -->
<target name="clear">
<delete dir="${build.dir}" />
<delete dir="${dist.dir}" />
</target>
<!-- 创建目录结构 -->
<target name="init">
<mkdir dir="${build.dir}/classes" />
<mkdir dir="${dist.dir}" />
</target>
<!-- 编译Java代码 -->
<target name="compile" depends="init" description="编译java文件">
<javac srcdir="${src.dir}" destdir="${build.dir}/classes">
<compilerarg line="-encoding GBK" />
</javac>
<copy todir="${build.dir}">
<fileset dir="${src.dir}">
<include name="**/*.xml" />
<include name="**/*.jar" />
</fileset>
</copy>
<copy todir="${web-inf.dir}/classes">
<fileset dir="src">
<include name="**/*.properties" />
<include name="**/*.xml" />
</fileset>
</copy>
<copy todir="${web-inf.dir}/classes">
<fileset dir="${build.dir}/classes">
<include name="**/*.*" />
</fileset>
</copy>
</target>
<!-- 将class文件打成 jar包 -->
<!--
<target name="pack" depends="compile">
<jar jarfile="${build.dir}/${ant.project.name}.jar">
<fileset dir="${build.dir}/classes">
<include name="**/*.class"/>
</fileset>
</jar>
</target>
-->
<!-- 打成war包, 名称默认为 项目名 -->
<target name="dist" depends="compile" description="将工程打成war包">
<war destfile="${dist.dir}/${ant.project.name}.war" basedir="${webRoot.dir}" webxml="${web-inf.dir}/web.xml" />
</target>
<!--//////////////////////////////////////////////////////// -->
<target name="undeploy" description="Remove application in Tomcat">
<echo message="undeploying to web ..." />
<taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask" />
<undeploy url="${tomcat.manager.url}" username="${tomcat.manager.username}" password="${tomcat.manager.password}"
path="/${context-path}" />
</target>
<target name="deploy" description="Install application in Tomcat" depends="dist">
<echo message="deploying to web ..." />
<taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask" />
<deploy url="${tomcat.manager.url}" username="${tomcat.manager.username}" password="${tomcat.manager.password}"
path="/${context-path}" war="${dist.dir}/xbcw.war" update="true" />
<!-- file:${dist}/deploy.war -->
</target>
<target name="list">
<echo message="list web tomcat ..." />
<taskdef name="list" classname="org.apache.catalina.ant.ListTask" />
<list url="${tomcat.manager.url}" username="${tomcat.manager.username}" password="${tomcat.manager.password}" />
</target>
</project>
如果JAVA文件引用了第三方JAR包,还要把所有的JAR全部引用进来
<path id="project.classpath">
<pathelement location="WebRoot/WEB-INF/classes"/>
<pathelement location="WebRoot/WEB-INF/lib/activation.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/commons-codec-1.4.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/commons-httpclient-3.1.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/commons-logging-1.1.1.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/jsoup-1.5.2.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/mailapi.jar"/>
<pathelement location="WebRoot/WEB-INF/lib/smtp.jar"/>
</path>
并在JAVAC中加对其进行CLASSPATH的引用
<javac srcdir="${src.dir}" destdir="${build.dir}/classes">
<compilerarg line="-encoding GBK" />
<classpath refid="project.classpath"/>
</javac>
分享到:
相关推荐
3. 使用Ant进行构建和部署的步骤:解释如何运行Ant脚本,以及如何将生成的WAR包部署到Web服务器。 4. 版本控制操作:如何使用Ant与SVN交互,如更新代码、提交修改、解决冲突等。 5. 常见问题和解决方案:列出可能...
本篇文章将详细阐述如何使用Ant来构建WAR(Web Application Archive)包。 #### 一、Ant简介 Ant是一个基于Java的构建工具,它可以用来执行一系列的任务,如编译Java源代码、运行单元测试、部署应用程序等。Ant...
本文将深入探讨“ant打包Web工程”这一主题,基于提供的标签“源码”和“工具”,我们将围绕Apache Ant这个强大的Java构建工具进行讲解。 Apache Ant是一个开源的Java构建工具,它以XML格式定义了构建过程,使得...
部署:将打包后的war文件部署到制定的web应用服务器中去。(tomcat的webappers中去) ******************************* ant默认执行build.xml文件 ant是使用的java文件编写,所以具有跨平台的特性。 再使用ant执行...
在Java Web开发中,"Ant打war包过程"是一个关键步骤,它涉及到使用Apache Ant工具将项目打包成一个可部署的WAR(Web Application Archive)文件。Ant是一个基于XML的构建工具,广泛用于自动化Java项目的构建、编译和...
在Java开发领域,Ant是一个非常重要的...在描述的“简单的案例用ant将工程打war”中,我们首先要创建`build.xml`文件,并设置基本的项目配置。这通常包括项目的源代码目录、输出目录、类路径等信息。例如: ```xml ...
本篇主要介绍如何使用Ant来进行WAR(Web Application Archive)文件的打包,这在Java Web应用的发布和部署过程中至关重要。 首先,我们需要了解什么是WAR文件。WAR文件是Java Web应用程序的标准打包格式,它包含...
### 如何在DOS下将工程打包成WAR包 在软件开发过程中,特别是Java Web项目的部署环节,将项目打包成WAR文件是一项常见的需求。WAR文件(Web Application Archive)是一种用于封装Web应用程序的标准格式,它包含了...
本篇文章将详细解释如何使用ANT将Java程序打成JAR包。 首先,理解ANT的基本概念是必要的。Apache ANT是一个由Apache软件基金会开发的Java库和命令行工具,其主要任务是驱动构建过程。它的核心概念是构建文件(build...
本主题将深入探讨如何结合Apache Ant和Subversion(Svn)来打包Web工程,这是一个常见的开发实践,尤其对于Java Web项目而言。首先,让我们理解这两个工具的核心概念。 **Apache Ant** 是一个Java库和命令行工具,...
本文将详细介绍如何使用Ant脚本来实现远程部署到Tomcat服务器。 首先,Ant脚本的基础结构是XML格式,如以下示例所示: ```xml <project name="kit.web" default="war" basedir="."> ... ``` 在`<project>`标签...
14. **打包和部署**:通过`<jar>`任务打包Java应用,使用`<war>`任务打包Web应用,并结合`<ftp>`或`<scp>`任务实现远程部署。 15. **持续集成**:将Ant构建文件与持续集成工具(如Jenkins、Hudson等)结合,实现...
本文主要介绍如何使用Apache Ant来实现Web项目的自动化打包并远程部署到Tomcat服务器上。 #### 二、准备工作 1. **环境配置** - **Eclipse IDE**:用于编写和构建项目。 - **Apache Ant**:用于自动化构建过程。...
标题中的“ant远程上传并部署tomcat”是指使用Apache Ant工具执行自动化构建任务,将本地的Web应用(如WAR或EAR文件)传输到远程Linux服务器的Tomcat应用服务器上进行部署,并随后重启Tomcat服务以使更改生效。Ant是...
接下来,是远程部署的关键步骤: 1. **配置Tomcat服务器**:确保你已经在远程服务器上安装并配置了Tomcat,且服务器的SSH服务(如OpenSSH)处于运行状态,允许你通过SSH进行文件传输。 2. **创建Ant构建文件**:在...
1. Java War 包的生成:通过 IDEA 的 Maven 形式生成 War 包,或者使用 Jenkins 或 Ant 工具进行打包。 2. Nginx 的安装和配置:使用 ./configure 命令来编译 Nginx,添加 --with-http_stub_status_module 和 --...
本文将深入探讨如何使用Ant将Java工程打包成bat可执行文件,并结合提供的`antBatTest`压缩包中的示例进行说明。 首先,我们需要了解Ant的基本概念。Ant是一个基于XML的构建工具,它的主要任务是编译、测试、打包和...