使用Apache ant 1.9.6编译打包Web项目
来源:互联网 发布:java吧 编辑:程序博客网 时间:2024/06/04 20:11
环境:
1,OS:Windows7
2,JDK:jdk1.7
3,Apache Ant:apache-ant-1.9.6
步骤:
1,解压apache-ant-1.9.6-bin.zip
2,添加环境变量ANT_HOME,比如C:\apache-ant-1.9.6-bin
3,Path变量添加ant的bin目录,比如%ANT_HOME%\bin
目标流程:
1,删除web project web-info目录下的classes目录;删除.war文件
2,建立web project web-info目录下的classes目录
3,复制src下的非java文件
4,编译生成java的class文件
5,打包成.war文件
Ant build.xml文件
<?xml version="1.0" encoding="UTF-8"?><project name="webprjtest" default="createwebwarfile" basedir="F:/"><property name="webproject.base" value="${basedir}/webtestproject/" ></property><property name="webproject.src" value="${webproject.base}/src/" ></property><property name="webproject.root" value="${webproject.base}/WebRoot/" ></property><property name="webproject.lib" value="${webproject.root}/WEB-INF/lib/"></property><property name="webproject.classes" value="${webproject.root}/WEB-INF/classes/"></property><property name="appname" value="${ant.project.name}" ></property><property name="warfile" value="${basedir}/${appname}.war" ></property><!-- J2EE lib--><property name="tomcat.lib" value="C:/tomcat/lib/"></property><target name="del"><delete dir="${webproject.classes}"></delete><delete file="${warfile}"></delete></target><target name="md"><mkdir dir="${webproject.classes}"/></target><path id="classpath"> <fileset dir="${webproject.lib}"> <include name="*.jar"/> </fileset><fileset dir="${tomcat.lib}"><include name="*.jar"/></fileset></path><property name="classpath" refid="classpath"></property><target name="buildjava" description="Build java files and Copy other files in src ."><javac srcdir="${webproject.src}" destdir="${webproject.classes}" classpath="${classpath}" encoding="utf-8" debug="true"deprecation="true"> </javac></target><target name="cp"><copy todir="${webproject.classes}"><fileset dir="${webproject.src}"><exclude name="**/*.java"/></fileset></copy></target><target name="createwebwarfile" depends="del,md,cp,buildjava" description="Create War file from Web-Project ."><war destfile="${warfile}" webxml="${webproject.root}/WEB-INF/web.xml"><fileset dir="${webproject.root}" ><include name="**" /></fileset></war></target></project>
===================================================================================
环境:
1,OS:Windows7
2,JDK:jdk1.8
3,Apache Ant:apache-ant-1.9.6
4,Tomcat8.5.3
目标:
对JavaWeb项目编译、打包、并在tomcat中运行
代码:
<?xml version="1.0" encoding="UTF-8"?><!-- ====================================================================== ====================================================================== --><project name="monitor" default="default" basedir="D:/workspace_ElipseJEE_mars2"> <description> Web Project built with JDK8 and run on Tomcat8.5.3 </description><record action="start" append="no" loglevel="info" name="e:/antbuildwar.log"/><property name="webprj.base" value="${basedir}/monitor/"></property><property name="webprj.src" value="${webprj.base}/src/"></property><property name="webprj.root" value="${webprj.base}/WebRoot/"></property><property name="webprj.lib" value="${webprj.root}/WEB-INF/lib/"></property><property name="webprj.classes" value="${webprj.root}/WEB-INF/classes/"></property><property name="appname" value="${ant.project.name}"></property><property name="warfile" value="${basedir}/${appname}.war"></property><!-- tomcat --><property name="tomcat.home" value="F:/software/develop/apache-tomcat-8.5.3_win32/"></property><property name="tomcat.lib" value="${tomcat.home}/lib/"></property><property name="tomcat.webappfoler" value="${tomcat.home}/webapps/"></property> <!-- ================================= target: default ================================= --> <target name="default" depends="startuptomcat8.5" description="description"> </target> <!-- Delete old *.class folder and .war file --><target name="delclasses"><delete dir="${webprj.classes}"></delete><delete file="${warfile}"></delete></target><!-- Create classes dir --><target name="md" ><mkdir dir="${webprj.classes}"/></target><!-- 需要引用的jar包 --><path id="classpathset"><fileset dir="${webprj.lib}"><include name="*.jar"/></fileset><fileset dir="${tomcat.lib}"><include name="*.jar"/></fileset></path><property name="classpath" refid="classpathset"></property><!-- - - - - - - - - - - - - - - - - - target: buildjava,编译 - - - - - - - - - - - - - - - - - --> <target name="buildjava"> <javac verbose="yes" listfiles="yes" classpath="${classpath}" srcdir="${webprj.src}" destdir="${webprj.classes}" fork="java$$javac.exe" source="1.8" target="1.8" encoding="utf-8" debug="on" deprecation="on" > <compilerarg value="-Xlint"/> </javac> </target><!-- - - - - - - - - - - - - - - - - - target: cp,复制其他一些非java文件 - - - - - - - - - - - - - - - - - --> <target name="cp"> <copy todir="${webprj.classes}"> <fileset dir="${webprj.src}"> <exclude name="**/*.java"/> </fileset> </copy> </target><!-- - - - - - - - - - - - - - - - - - target: createwarfile - - - - - - - - - - - - - - - - - --> <target name="createwarfile" depends="delclasses,md,cp,buildjava"> <war destfile="${warfile}" webxml="${webprj.root}/WEB-INF/web.xml"> <fileset dir="${webprj.root}"> <include name="**"/> </fileset> </war> </target><!-- - - - - - - - - - - - - - - - - - target: cpwar - - - - - - - - - - - - - - - - - --> <target name="cpwar" depends="createwarfile"> <copy todir="${tomcat.webappfoler}" file="${warfile}" overwrite="yes"></copy> </target><!-- - - - - - - - - - - - - - - - - - target: startuptomcat8.5, 执行外部命令, 如果exec中没有dir属性设置,那么tomcat不启动成功,报CATALINA_HOME没设置 - - - - - - - - - - - - - - - - - --> <target name="startuptomcat8.5" depends="cpwar"> <exec executable="cmd.exe" dir="${tomcat.home}"> <arg line="/c ${tomcat.home}/bin/startup.bat"/> </exec> </target></project>
0 0
- 使用Apache ant 1.9.6编译打包Web项目
- 使用Apache Ant编译打包运行Java项目
- apache ant 的使用--编译、打包
- ant打包web项目
- 使用ant脚本,对java web项目,编译、打包、发布部署到tomcat
- 使用ant脚本,对java web项目,编译、打包、发布部署到tomcat
- 普通java web项目ant编译打包成war
- 使用ant编译发布web项目
- 使用Ant打包项目!!!
- Ant编译打包Android项目
- ant编译打包SSH项目
- Android使用ant对项目进行编译签名优化打包
- Android使用ant对项目进行编译签名优化打包
- Android使用ant对项目进行编译签名优化打包
- App自动化之使用Ant编译项目多渠道打包
- App自动化之使用Ant编译项目多渠道打包
- Android_使用ant对项目进行编译签名优化打包
- App自动化之使用Ant编译项目多渠道打包
- NYOJ 52-无聊的小明【模拟】
- ' finished with non-zero exit value 2
- Get,Post请求差异及用法
- 整数数据类型的编码表示(C语言)
- hdoj 1864 最大报销额【0-1背包变形】
- 使用Apache ant 1.9.6编译打包Web项目
- Animals
- 模拟实现 printf 函数
- javaWeb求职之路__进阶书籍
- hdoj 2546 饭卡 【转化思维+0-1背包】
- 操作系统中常用的调度算法
- 初始化顺序、==、AB交换
- 07_计算三位数中的所有“水仙花数”
- LeetCode 121. Best Time to Buy and Sell Stock