Как получить комментарии, используя SPOON? - PullRequest
0 голосов
/ 10 июня 2018

все!Я не уверен, что вы, ребята, встречаете вопросы, когда используете SPOON для получения комментариев к коду Java.Согласно описанию на следующем веб-сайте,

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

Мы знаем различные виды комментариев Java, с которыми SPOON может иметь дело,но когда я использую либо функцию 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 голосов
/ 13 июня 2018

По умолчанию Spoon не учитывает комментарий из исходного кода.Чтобы сделать их доступными, вам нужно переключить опцию, чтобы активировать их.

Это можно сделать с помощью следующего кода:

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

И теперь это должно работать.

...