Платформы поколения исходного кода Java [закрываются]

7
задан Andrey Adamovich 28 March 2010 в 15:11
поделиться

3 ответа

В проектах IDE NetBeans и Eclipse JDT имеется значительная логика анализа / генерации кода Java. Я не знаю, каковы их зависимости (то есть можете ли вы использовать их как отдельные библиотеки), но в остальном я бы внимательно рассмотрел эти две: маловероятно, что библиотека анализа кода Java находится в более интенсивной разработке и многое другое. своевременно.

Обновление:

PMD также может быть интересным:

PMD сканирует исходный код Java и ищет потенциальные проблемы, например:

 * Возможные ошибки - пустые операторы try / catch / finally / switch 
 * Мертвый код - неиспользуемые локальные переменные, параметры и частные методы 
 * Субоптимальный код - расточительное использование String / StringBuffer 
 * Слишком сложные выражения - ненужные операторы if, для циклов, которые могут быть циклы 
 * Дублированный код - скопированный / вставленный код означает скопированные / вставленные ошибки 
 

Кроме того, в этой записи блога обсуждаются различные инструменты статического анализа кода.

1
ответ дан 7 December 2019 в 05:20
поделиться

Если вам нужно только сгенерировать синтаксически правильный код Java, проверьте Codemodel .

4
ответ дан 7 December 2019 в 05:20
поделиться

В итоге я использовал PMD. Пример кода можно увидеть ниже:

    final Java15Parser parser = new Java15Parser();
    final FileInputStream stream = new FileInputStream("VehicleServiceType.java");

    final Object c = parser.parse(new InputStreamReader(stream));

    final XPath xpath = new BaseXPath("//TypeDeclaration/Annotation/NormalAnnotation[Name/@Image = 'WebService']",
        new DocumentNavigator());

    for (final Iterator iter = xpath.selectNodes(c).iterator(); iter.hasNext();) {
      final Object obj = iter.next();
      // Do code generation based on annotations...
    }
3
ответ дан 7 December 2019 в 05:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: