使用对Ant编程来实现简单文件的打包
来源:互联网 发布:和合软件科技有限公司 编辑:程序博客网 时间:2024/04/20 18:29
使用对Ant编程来实现简单文件的打包
kongxx
Ant是我们熟悉的Java构建工具,通常我们使用Ant是通过build.xml文件来实现任务的调用,其实不仅如此,我们还也可以通过编程的方式来实现任务调用,从而简化我们的开发。以下是我很久以前写的一个关于使用Ant打包文件的程序片段,最近做东西又翻了出来,简单整理了一下,程序片段如下:
import java.io.File;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.taskdefs.Expand;
import org.apache.tools.ant.taskdefs.Zip;
import org.apache.tools.ant.types.FileSet;
public class Package {
public static void main(String[] args) {
Package p1 = new Package();
String strDir1 = "f://Test";
String strDestFile1 = "f://test1.zip";
p1.pack(strDir1 ,strDestFile1);
Package p2 = new Package();
String strDir2 = "f://Test";
String strDestFile2 = "f://test2.zip";
String[] filenames2 = {"test1//test11//*" ,"test1//test12//*"};
p2.pack(strDir2 ,filenames2,strDestFile2);
}
/**
* 打包一个目录
* @param strDir 要打包的目录
* @param strDestFile 要打包的压缩文件路径
*/
public void pack(String strDir ,String strDestFile) {
pack(new File(strDir),new File(strDestFile));
}
/**
* 打包一个目录
* @param fDir 要打包的目录对象
* @param fDestFile 要打包的压缩文件对象
*/
public void pack(File fDir ,File fDestFile) {
Zip zip = new Zip();
zip.setProject(new Project());
zip.setTaskName("default");
zip.setBasedir(fDir);
zip.setDestFile(fDestFile);
zip.execute();
}
/**
* 打包一个目录下一定范围内的文件
* @param fDir 要打包的目录对象
* @param filenames 要包含的文件列表。是相对要打包目录的相对路径
* @param fDestFile 要打包的压缩文件对象
*/
public void pack(File fDir ,String[] filenames ,File fDestFile) {
Zip zip = new Zip();
zip.setProject(new Project());
zip.setTaskName("default");
zip.setDestFile(fDestFile);
FileSet fs = new FileSet();
fs.setDir(fDir);
for(int i = 0 ; i < filenames.length ; i++) {
fs.setIncludes(filenames[i]);
}
zip.addFileset(fs);
zip.execute();
}
/**
* 打包一个目录下一定范围内的文件
* @param strDir 要打包的目录对象
* @param filenames 要包含的文件列表。是相对要打包目录的相对路径
* @param strDestDir 要打包的压缩文件对象
*/
public void pack(String strDir ,String[] filenames ,String strDestDir) {
pack(new File(strDir) ,filenames ,new File(strDestDir));
}
/**
*
* @param strSrcZip
* @param strDestDir
*/
public void unpack(String strSrcZip ,String strDestDir) {
unpack(new File(strSrcZip) ,new File(strDestDir));
}
/**
*
* @param fSrcZip
* @param fDestDir
*/
public void unpack(File fSrcZip ,File fDestDir) {
Expand expand = new Expand();
expand.setProject(new Project());
expand.setSrc(fSrcZip);
expand.setDest(fDestDir);
expand.setOverwrite(true);
expand.execute();
}
}
从代码看仅仅几行代码就解决了原来我们需要写得几十行代码,其实Ant还可以替我们完成许多工作,仅仅通过很少的代码,就可以实现,那何乐而不为呢。
- 使用对Ant编程来实现简单文件的打包
- 使用ant来打包未提交的svn文件
- 用ant来打包简单的ejb(jboss)的总结 使用ant
- 使用ant的task来简单实现压缩解压缩
- ant的高级使用,ant命令详解,ant打包,ant编译后打包去掉jar文件
- 简单的ant打包
- 如何编写Build文件对手机软件的编译打包----使用antenna和ant
- 使用ant打包APK文件
- 使用ant打包js文件
- 使用XML文件来实现对Servlet的配置
- 使用Ant对J2me程序打包
- 使用Ant对程序进行编译打包
- 使用ant对Android工程打包
- ant简单打包build.xml文件
- Ant自动打包、多渠道打包的实现
- 用Ant来打包
- 用Ant来打包
- 使用ant编译打包运行java文件
- 第十五周总结
- 【收藏】值得领悟的小故事34个
- First piece
- 程序员?
- 传AMD将推出64位Sempron 最快七月中上市
- 使用对Ant编程来实现简单文件的打包
- 日本对中国的经济制衡
- 好消息 MSN Hotmail升级250M已经确认
- 2005-6-7 毕业答辩
- 安全配置向导为Win2003打造“铜墙铁壁”
- Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的简易安装配置
- Linux优化及安全配置
- SERV-U 6002版安全设置全攻略(图文)
- 关于Linux网络安全的内在限制