最近用jdt的ASTParser解析java源文件得到CompilationUnit,然后通过CompilationUnit对java文件进行操作(如:修改方法参数列表...)。
可是将java文件解析成CompilationUnit以后,java文件BlockComment、LineComment就丢失了。问题的原因我找了好久了,jdt的重构源码也找了一部分,可问题依旧没有解决。操作代码如下:
有哪位大哥路过,指点一下,感激不尽。
可是将java文件解析成CompilationUnit以后,java文件BlockComment、LineComment就丢失了。问题的原因我找了好久了,jdt的重构源码也找了一部分,可问题依旧没有解决。操作代码如下:
/*获取CompilationUnit */
ASTParser parser = ASTParser.newParser(AST.JLS3);
parser.setBindingsRecovery(true);
parser.setSource(contents.toCharArray());//content为java文件反序列化的字符串
CompilationUnit unit = (CompilationUnit) parser.createAST(null); //到这里注释就丢了
/*操作CompilationUnit */
//.......
/*持久化CompilationUnit */
FileUtil.output2JavaFile(javaFileLocalPath,unit .toString());
有哪位大哥路过,指点一下,感激不尽。