如何使用SPOON获取评论?

时间:2018-06-10 04:38:39

标签: comments inria-spoon

一切!在使用 SPOON 获取Java代码注释时,我不确定您是否遇到问题。根据以下网站的描述,

  

http://spoon.gforge.inria.fr/comments.html

我们知道 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());   
  }
}

寻求您的帮助,欢迎任何评论!

1 个答案:

答案 0 :(得分:1)

默认情况下,Spoon不会考虑源代码中的注释。 为了使它们可用,你必须切换一个选项来激活它们。

可以使用以下代码完成:

Launcher launcher = new Launcher();
launcher.getEnvironment().setCommentEnabled(true);

现在应该可以了。