Linux下使用ant部署MyEclipse Web工程
2008-12-10 20:48
225 查看
1.环境变量设置
首先,确定自己的/etc/profile或者/${HOME}/.bashrc下有如下的环境设置:
------
#set java env
export JAVA_HOME=xxx
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
#set tomcat env
export TOMCAT_HOME=xxx
#set ant env
export ANT_HOME=xxx
export PATH=$PATH:$ANT_HOME/bin
------
有了以上的设置,就可以使用<property environment="env"/>来找到相关的环境变量。
在shell下可以
[root@localhost ~]# env
查看环境变量。
2.ant脚本位置
根据MyEclipse[/b]下Web工程的文件位置放置build.xml(与WebRoot同层):
------
|-src
|-WebRoot
|-WEB-INF
|-META-INF
|-build.xml
------
3.build.xml
该脚本可以将当前的Web工程编译并部署到你的Tomcat的webapps目录下,为避免在webapps下出现工程名相同而覆盖的情况,将使用当前部署时间作为工程名。注意,这里假定使用Tomcat6,它的/lib目录有别于Tomcat5。
<?xml version="1.0" encoding="utf-8"?>
<project name="myDeploy" default="all" basedir=".">
<property name="build.dir" value="${basedir}/build"/>
<property name="src" value="${basedir}/src"/>
<property name="build.webinf" value="${basedir}/build/WEB-INF"/>
<property name="build.weblib" value="${basedir}/build/WEB-INF/lib"/>
<property name="build.metainf" value="${basedir}/build/META-INF"/>
<property name="build.dest" value="${basedir}/build/WEB-INF/classes"/>
<property environment="env"/>
<target name="init">
<tstamp/>
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.webinf}"/>
<mkdir dir="${build.weblib}"/>
<mkdir dir="${build.metainf}"/>
<mkdir dir="${build.dest}"/>
<copy todir="${build.dir}">
<fileset dir="${basedir}/WebRoot">
<include name="**"/>
</fileset>
</copy>
</target>
<target name="compile" depends="init">
<property name="servletapi"
value="${env.TOMCAT_HOME}/lib/*.jar"/>
<property name="locallib"
value="${build.weblib}/*.jar"/>
<javac srcdir="${src}" destdir="${build.dest}" classpath="${servletapi};${locallib}"/>
</target>
<target name="deploy" depends="compile">
<property name="deploy.dir" value="${env.TOMCAT_HOME}/webapps/${DSTAMP}${TSTAMP}"/>
<mkdir dir="${deploy.dir}"/>
<copy todir="${deploy.dir}">
<fileset dir="${build.dir}">
<include name="**"/>
</fileset>
</copy>
</target>
<target name="clean" depends="init">
<delete dir="${build.dir}"/>
</target>
<target name="all" depends="deploy,clean"
description="deploys the project to tomcat and cleans the build files."/>
</project>
首先,确定自己的/etc/profile或者/${HOME}/.bashrc下有如下的环境设置:
------
#set java env
export JAVA_HOME=xxx
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
#set tomcat env
export TOMCAT_HOME=xxx
#set ant env
export ANT_HOME=xxx
export PATH=$PATH:$ANT_HOME/bin
------
有了以上的设置,就可以使用<property environment="env"/>来找到相关的环境变量。
在shell下可以
[root@localhost ~]# env
查看环境变量。
2.ant脚本位置
根据MyEclipse[/b]下Web工程的文件位置放置build.xml(与WebRoot同层):
------
|-src
|-WebRoot
|-WEB-INF
|-META-INF
|-build.xml
------
3.build.xml
该脚本可以将当前的Web工程编译并部署到你的Tomcat的webapps目录下,为避免在webapps下出现工程名相同而覆盖的情况,将使用当前部署时间作为工程名。注意,这里假定使用Tomcat6,它的/lib目录有别于Tomcat5。
<?xml version="1.0" encoding="utf-8"?>
<project name="myDeploy" default="all" basedir=".">
<property name="build.dir" value="${basedir}/build"/>
<property name="src" value="${basedir}/src"/>
<property name="build.webinf" value="${basedir}/build/WEB-INF"/>
<property name="build.weblib" value="${basedir}/build/WEB-INF/lib"/>
<property name="build.metainf" value="${basedir}/build/META-INF"/>
<property name="build.dest" value="${basedir}/build/WEB-INF/classes"/>
<property environment="env"/>
<target name="init">
<tstamp/>
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.webinf}"/>
<mkdir dir="${build.weblib}"/>
<mkdir dir="${build.metainf}"/>
<mkdir dir="${build.dest}"/>
<copy todir="${build.dir}">
<fileset dir="${basedir}/WebRoot">
<include name="**"/>
</fileset>
</copy>
</target>
<target name="compile" depends="init">
<property name="servletapi"
value="${env.TOMCAT_HOME}/lib/*.jar"/>
<property name="locallib"
value="${build.weblib}/*.jar"/>
<javac srcdir="${src}" destdir="${build.dest}" classpath="${servletapi};${locallib}"/>
</target>
<target name="deploy" depends="compile">
<property name="deploy.dir" value="${env.TOMCAT_HOME}/webapps/${DSTAMP}${TSTAMP}"/>
<mkdir dir="${deploy.dir}"/>
<copy todir="${deploy.dir}">
<fileset dir="${build.dir}">
<include name="**"/>
</fileset>
</copy>
</target>
<target name="clean" depends="init">
<delete dir="${build.dir}"/>
</target>
<target name="all" depends="deploy,clean"
description="deploys the project to tomcat and cleans the build files."/>
</project>
相关文章推荐
- Linux下使用ant部署MyEclipse Web工程 推荐
- Linux下使用ant部署MyEclipse Web工程
- 使用Ant将windows下开发的Struts2应用直接部署到Linux上
- 使用ANT+SVN在Linux上实现自动部署项目
- linux下ftp的server/client的部署及使用
- Linux下的Jenkins+Tomcat+Maven+Gitlab+Shell环境的搭建使用(jenkins自动化部署)
- 在linux下使用ant创建编译Android项目
- Linux下使用ant+svn发布java项目
- 使用ant脚本,对java web项目,编译、打包、发布部署到tomcat
- 使用WSAdmin和ANT自动部署websphere6.1
- 使用tftp、dhcp、nfs,网络PEX批量部署linux
- Linux基础入门教程-使用Squid部署代理缓存服务
- 跨平台开发使用ant部署并测试
- redis在linux上部署,Redis服务器搭建/配置/及Jedis客户端的使用方法(java语言)
- 使用ARM模板部署自动扩展的Linux VMSS(1)
- 使用ARM模板部署自动扩展的Linux VMSS(1)
- Flash在win和linux下ant部署
- Linux-7.2下使用Tomcat-8.5实现项目热部署(终极一般)
- Centos6.5_使用salt自动部署zabbix-2.4.4(适合没什么linux基础使用,加了很多注释)
- Linux中Spark SQL分布式SQL引擎 部署RDB | 安装MySQL+Hive | 使用beeline交互式工具