Using AST to parse my code with eclipse 3.2 [message #235877] |
Thu, 14 September 2006 01:39 |
Eclipse User |
|
|
|
Originally posted by: diegobt.gmail.com
Hi All:
I want to use Eclipses ASTParser to parse a .java and generate an AST to
print it.
After reading this
http://www-128.ibm.com/developerworks/opensource/library/os- ast/?ca=dgr-lnxw97ASTParser
I tried to get this snippet to do it.
File file = new File("ClassA.java");
BufferedReader in = new BufferedReader(new FileReader(file));
StringBuffer buffer = new StringBuffer();
String line = null;
while (null != (line = in.readLine())) {
buffer.append("\t" + line);
buffer.append("\n");
}
ASTParser parser = ASTParser.newParser(AST.JLS2);
parser.setKind(ASTParser.K_COMPILATION_UNIT);
String text = buffer.toString();
parser.setSource(text.toCharArray());
CompilationUnit node = (CompilationUnit) parser.createAST(null);
ASTVisitor visitor = new ASTPrintVisitor();
node.accept(visitor);
But I get this:
Exception in thread "main" java.lang.NoClassDefFoundError:
org/eclipse/core/runtime/Plugin
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at
java.security.SecureClassLoader.defineClass(SecureClassLoade r.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268 )
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319 )
at
org.eclipse.jdt.core.dom.ASTParser.initializeDefaults(ASTPar ser.java:230)
at org.eclipse.jdt.core.dom.ASTParser.<init>(ASTParser.java:212)
at org.eclipse.jdt.core.dom.ASTParser.newParser(ASTParser.java: 112)
at ASTPrint.main(ASTPrint.java:18)
I've been debugging it but cant figure out what to do. Perhaps someone
could help me out.
Thanks in advance!
/diego
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03204 seconds