复制代码
package com.leeass.generate;
import java.io.File;
import java.io.FileFilter;
import java.io.FileNotFoundException;
/**
* 用于cocos2d-x引擎中android项目编译文件列表生成
* @author leeassamite
*
*/
public class GenerateAndroidMakefile {
/** 分隔符 */
private static final String LINE_BREAK = System.getProperty("line.separator", "/n");
/** classes文件夹 */
private File classesDir = null;
/** classes文件夹路径 */
private String classesPath = "";
/** classes文件夹相对路径 */
private String classesRelativePath = "";
/** 编译文件过滤器 */
private BuildFileFilter buildFileFilter = null;
/**
* 创建GenerateAndroidMakefile
* @param classesAbsolutePath classes文件夹绝对路径
* @param classesRelativePath classes文件夹在编译文件中的相对路径
* @throws Exception
*/
public GenerateAndroidMakefile(String classesAbsolutePath,String classesRelativePath) throws Exception{
if(classesRelativePath == null){
throw new Exception("classes文件夹相对路径错误,不能为NULL!");
}
if(classesAbsolutePath == null || "".equals(classesAbsolutePath)){
throw new Exception("classes文件夹路径输入错误,不能为空!");
}
classesDir = new File(classesAbsolutePath);
if((!classesDir.exists()) || (!classesDir.canRead()) || (!classesDir.isDirectory())){
throw new FileNotFoundException("classes文件夹不可读:"+classesDir.getAbsolutePath());
}
this.classesPath = classesAbsolutePath;
this.classesPath = classesAbsolutePath.replaceAll("", "/");
this.classesRelativePath = classesRelativePath;
buildFileFilter = new BuildFileFilter();
}
/**
* 输出编译文件列表
*/
public void outputBuildFilesList(){
StringBuilder buildFilesSb = new StringBuilder();
outputBuildFileList(classesDir,buildFilesSb);










