一切!在使用 SPOON 获取Java代码注释时,我不确定您是否遇到问题。根据以下网站的描述,
我们知道 SPOON 可以处理的各种Java注释,但是当我使用函数CtElement.getDocComment()
或接口spoon.reflect.code.CtComment
时,我无法得到任何评论内容。
主函数中只有一个Launcher对象,
Launcher launcher = new Launcher();
launcher.addInputResource("src/main/java/org/xxx/A.java");
CtModel model = launcher.buildModel();
model.processWith(new CLSProsessor());
处理器CLSProcessor
如下,
class COMProcessore extends AbstractProcessor<CtComment>{
@Override
public boolean isToBeProcessed(CtComment candidate) {
// only process Javadoc
if (candidate.getCommentType() == CtComment.CommentType.JAVADOC) {
return true;
}
return false;
}
@Override
public void process(CtComment arg0) {
System.out.println(">>" + arg0.getContent());
}
}
寻求您的帮助,欢迎任何评论!
答案 0 :(得分:1)
默认情况下,Spoon不会考虑源代码中的注释。 为了使它们可用,你必须切换一个选项来激活它们。
可以使用以下代码完成:
Launcher launcher = new Launcher();
launcher.getEnvironment().setCommentEnabled(true);
现在应该可以了。