文档章节

ANT(3) 编译 打包 移动 重命名

恋佳
 恋佳
发布于 2015/07/22 14:06
字数 613
阅读 2
收藏 0

1 编译源代码

<javac srcdir="src">

这个标签寻找src目录中以.java为拓展名的所有文件,并对他们调用javac编译器,从而在相同的目录中生成类文件。当然,将类文件放在一个单独的目录结构中通常会更清晰:可以通过添加destdir属性来让Ant做到这点

<?xml version="1.0" encoding="UTF-8"?>
<project name="myAnt" basedir=".">

	<property name="compilescr" value="compilesrc">
	</property>
	
	<target name="mkdir">
		<mkdir dir="${compilescr}" />


	</target>
	<target name="compile" depends="mkdir">
		<javac srcdir="src" destdir="${compilescr}">
		</javac>
	</target>

</project>

2 创建jar文件

在编译java源文件之后,结果类文件通常被打包到一个JAR文件中,这个文件类似zip归档文件。每个JAR文件都包含一个清单文件,它可以指定该JAR文件的属性。

<jar destfile="package.jar" basedir="classes"/>

<?xml version="1.0" encoding="UTF-8"?>
<project name="myAnt" basedir=".">

	<property name="compilescr" value="compilesrc">
	</property>
	
	<target name="mkdir">
		<mkdir dir="${compilescr}" />


	</target>
	<target name="compile" depends="mkdir">
		<javac srcdir="src" destdir="${compilescr}">
		</javac>
	</target>
	
	<target name="jar" depends="compile">
		<jar destfile="test.jar" basedir="${compilescr}"></jar>
	
	
	
	</target>

</project>


提供主类等信息

jar标签有一个子标签 manifest用于指定一些jar的属性,可以在其中指定主类的信息

<manifest >
			<attribute name="Built-By" value="${user.name}"/>
			<attribute name="Main-Class" value="com.songxu.ant.Window"/>
		
		</manifest>

3 复制 移动文件

  • 复制和移动文件及目录

<span style="font-size:18px;"><copy file="src/com/songxu/ant/Window.java" tofile="src/2.java"></copy>
	</span>

  • 使用move来执行重命名 而不是拷贝

<span style="font-size:18px;"><move file="src/com/songxu/ant/Window.java" tofile="src/com/songxu/ant/Window2.java"></move>
	</span>

  • 指定一个目录进行拷贝
<copy file="src/com/songxu/ant/Window2.java" todir="d:\"></copy>


4 压缩与解压缩


  •  压缩
        destfile  压缩包保存的路径  basedir 源路径

<span style="font-size:24px;"><target name="zip" depends="compile">
		<zip destfile="a.zip" basedir="${compilescr}"></zip>
	</target>
	</span>

  •       解压缩
        overwrite =true  覆盖原文件

<target name="unzip" >
	
		<unzip dest="." src="a.zip"  overwrite="true">
		
		
		</unzip>
	
	
	</target>



5 替换文件

replace  执行文件中查找和替换操作

token  属性指定要查找的字符串,value 指定要替换的新的字符串

<target name="replace">
		<replace file="replace.txt" token="jia" value="bingjia">
		</replace>
	</target>


6 模式匹配

*.java  当前目录下所有java文件

**/*.java 指定文件夹及其子目录下面所有的java文件

利用fileset 的include 标签  实现拷贝src目录下所有java文件的拷贝

<target name="include">
		<copy todir="./include">
			<fileset dir="src">
				<include name="**/*.java" />
			</fileset>
		</copy>
	</target>
















版权声明:本文为博主原创文章,未经博主允许不得转载。

© 著作权归作者所有

下一篇: 16Swing
恋佳
粉丝 0
博文 76
码字总数 62107
作品 0
大连
私信 提问
Android使用Ant多渠道打包

最近项目中需要添加应用渠道,我使用的是友盟统计,对于不同渠道需要编译不同版本,对于开发者说编译一次,手动操作还是可以接受的,但是项目发布版本频率较高,而且渠道很多,这就是一个体力...

军歌
2014/02/18
309
0
Android ANT多渠道打包

在没用AndroidStudio的Gradle构建项目之前,多渠道打包一般都是基于ANT构建,所以在此记录一下,以供查阅! 一、文件准备 1、首先要去官网下载ANT代码。 ANT官网下载地址 2、下载ANT循环打包...

军歌
2014/11/20
2K
3
基于Jenkins + Tomcat 的安卓客户端可持续化构建及发布下载(loltube.cn)

一. Jenkins 可持续化构建环境请参考 文章 http://my.oschina.net/long0419/blog/183299 二. 基于搭好可持续构建环境完成基础上 ,使用Ant 来编写安卓持续化构建环境 (未使用gradle 原理一样...

long0419
2015/04/02
258
0
部署公司打包工具需要注意的一些问题

公司利用ant提供了一个打包环境,大概的功能是通过ant直接checkout cvs服务器上面的代码,编译后生成能够直接部署在weblogic服务器上的ear包。 虽然有部署文档,坑却还是有。ant是必须安装的...

彭苏云
2014/04/02
88
0
XMPP学习笔记-LESSON-004:openfire之编译简介

of的使用非常简单,便捷,由于开源,下载源码后也可以随意修改,于是编译也就有了了解的必要。 of的构建工具是ant,所以前提你需要下载apache ant,并配置好环境。在此之前,建议了解一下ant...

今幕明
2014/02/10
285
0

没有更多内容

加载失败,请刷新页面

加载更多

对比ubuntu与centos系统 ​​​​

CentOS与Ubuntu该如何选择,哪个更好用。笔者在自媒体平台收集了一些网友的观点,较为经典,分享给大家。至于应该选择哪个,希望看完本文章后,读者心中有数。 观点1:CentOS适用于服务器,U...

老孟的Linux私房菜
今天
12
0
Java的基本类型

一、Java的基本类型 Java的基本类型有哪些? boolean char byte short int long float double ? 延伸思考 思考一:为什么有的书籍说Java存在第9种数据类型? 实际上,JAVA中还存在另外一种基...

yumoop
今天
14
0
OSChina 周四乱弹 —— 富婆小时候

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @猿敲月下码 :#今日歌曲推荐# 分享陈慧娴的单曲《夜机》 《夜机》- 陈慧娴 手机党少年们想听歌,请使劲儿戳(这里) @開源中國張學友 :早上...

小小编辑
今天
24
0
MyMinimad ── Linux下用libmad写的mp3解码播放程序(四)

优化了内存使用,不再使用mmap映射整个文件到内存 /* * 本程序是从 minimad 改进而来,如要更详细的说明请参看 minimad.c * * Gu Zhou, 2009/12/25, SiChuan University, China *...

代码强国
今天
18
0
Minikube安装

1、下载Minikube二进制文件 sudo curl -Lo minikube https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/releases/latest/minikube-linux-amd64 2、设置权限 sudo chmod +x minikube......

RogueQ
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部