首先,Eclipse JDT ASTParser可以在标准Java应用程序中工作。这剥夺了简单解析大量Java类文件的便利。假设您要解析目录下的100个.java文件。您将无法作为项目导入到Eclipse工作区。幸运的是,我们仍然可以使用ASTParser解析这些文件。
简而言之,有3个步骤可以做到:
1.从目录中读取文件名
2.从每个文件中获取代码字符串
3.使用JDT ASTParser进行解析
以下是运行程序所需的jar文件。这是前提条件,如果配置不正确,将会发生问题。
这是独立标准Java应用程序中ASTParser的完整代码。
import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.HashSet;import java.util.Set;
import org.eclipse.jdt.core.dom.AST;import org.eclipse.jdt.core.dom.ASTParser;import org.eclipse.jdt.core.dom.ASTVisitor;import org.eclipse.jdt.core.dom.CompilationUnit;import org.eclipse.jdt.core.dom.SimpleName;import org.eclipse.jdt.core.dom.VariableDeclarationFragment;
public class Main {
//use ASTParse to parse string
public static void parse(String str) {
ASTParser parser = ASTParser.newParser(AST.JLS3);
parser.setSource(str.toCharArray());