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

本文详细介绍了如何使用Ant工具进行编译源代码、创建JAR文件、复制和移动文件、压缩与解压缩、替换文件内容以及模式匹配的操作。重点讲解了javac和jar标签的用法,以及在Ant中实现文件的复制、重命名和模式匹配的策略。

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>
















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值