开发者社区> 业余草> 正文

ant的高级使用,ant命令详解,ant打包,ant编译后打包去掉jar文件

简介: 在日常的项目开发中,我们可以经常性的需要打包测试,尤其是开发环境是windows,而实际环境则是linux。<br> 这样的话,很多程序员要一会打一个包,一会打一个包,这些包可能会很大,实际上只有代码部分会变动,而jar包基本则不动。<br> 当然很多人可能会说,自动化测试。很好的,我们今天要做的就是自动化测试的第一步。<br> 这个时候我是可以使用ant来打包,去掉项目中的所有的j
+关注继续查看
在日常的项目开发中,我们可以经常性的需要打包测试,尤其是开发环境是windows,而实际环境则是linux。
这样的话,很多程序员要一会打一个包,一会打一个包,这些包可能会很大,实际上只有代码部分会变动,而jar包基本则不动。
当然很多人可能会说,自动化测试。很好的,我们今天要做的就是自动化测试的第一步。
这个时候我是可以使用ant来打包,去掉项目中的所有的jar文件。然后在项目的tomcat启动时到特定的地点去加载jar文件。

这样做,war包可能会只有几M,什么更小。具体如何动态的加载jar文件,我们在下一章讲解,这一章,我们先来看ant打包的build.xml配置。

看源代码:

<?xml version="1.0" encoding="UTF-8" ?>
<project name="nojar" default="deleteClasses" basedir=".">
	<property name="classes" value="build/classes" />
	<property name="build" value="build" />
	<property name="lib" value="WebRoot/WEB-INF/lib" />
	<path id="compile.jar">
		<fileset dir="${lib}">
			<include name="*.jar" />
		</fileset>
	</path>
	
	<!-- 删除build路径-->
	<target name="deleteBuild">
		<delete dir="build" />
		<copy todir="${classes}/com/herman/config">
			<fileset dir="${basedir}/src/com/herman/config">
				<include name="*" />
			</fileset>
		</copy>
	</target>

	<!-- 建立build/classes路径,并编译class文件到build/classes路径下-->
	<target name="compile" depends="deleteBuild">
		<mkdir dir="${classes}" />
		<javac srcdir="src" destdir="${classes}" includeantruntime="on" encoding="utf-8">
			<classpath refid="compile.jar" />
		</javac>
	</target>

	<!-- 打war包-->
	<target name="war" depends="compile">
		<war warfile="${build}/nojar.war" webxml="WebRoot/WEB-INF/web.xml" encoding="utf-8">   
			<!-- 拷贝WebRoot下除了WEB-INF和META-INF的两个文件夹-->
			<fileset dir="WebRoot" includes="**/*.jsp"></fileset>
			<!--<fileset dir="WebRoot" includes="**/*.*" excludes="META-INF,WEB-INF"/>-->
			<!-- 拷贝lib目录下的jar包-->
			<!--<lib dir="${lib}" />-->
			<!-- 拷贝build/classes下的class文件-->
			<classes dir="${classes}" />
        </war>    
	</target>
	
	<!-- 删除build/下的classes下的字节码文件,减少war包的总大小-->
	<target name="deleteClasses" depends="war">
		<!--<delete dir="${classes}"></delete>-->
	</target>
</project>
是不是很简单,好吧,如果你认为本文还可以,请关注我的个人博客!

或者加入QQ群:135430763共同学习!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ant eclipse使用
引用:http://www.cnblogs.com/freeskycd/articles/1677679.html 作为一个Java开发者,你有时可能感受到Java格式的严格。丢失 import声明,忘记声明变量,没有分号,语法混淆,以及文本编辑器的排版都可能引起Java命令行编译器 javac 的反应,其结果就是显示若干页的错误信息。
936 0
Ant的配置
Ant 配置记述   Ant的配置是需要Java的支持的,所以首先需要正确安装并配置好Java的JDK。    Ant最新版本在 http://Ant.apache.org 站点免费获取。
814 0
为ant指定编译版本
用Eclipse的ant折腾了一天也没搞清楚为什么同样的设置ant出的class版本却不一样。后来下载个ant工具在命令行执行通过。 从网上抄得指定编译版本的方法如下: ant 运行时,必需依赖jdk6.0,而是用ant编译java文件时,却需要是用jdk1.4或者1.5。
1128 0
ant 自动打包
引用:http://handsomeliuyang.iteye.com/blog/1156070  Ant使用   在ant的官网http://ant.apache.org进行下载后apache-ant-1.
901 0
【Apache Ant】ANT解析以及ANT在myEclipse中的使用
【Apache Ant】ANT解析以及ANT在myEclipse中的使用
82 0
【Groovy】Gradle 环境搭建 ( 下载 Gradle 工具 | 查找本地缓存的 Gradle 工具 | 配置 Gradle 环境变量 )
【Groovy】Gradle 环境搭建 ( 下载 Gradle 工具 | 查找本地缓存的 Gradle 工具 | 配置 Gradle 环境变量 )
169 0
+关注
业余草
业余草www.xttblog.com网站站长,CODE大全网站站长,爱分享www.ifxvn.com或www.ndislwf.com网站站长!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载