плагин maven checkstyle - PullRequest
       11

плагин maven checkstyle

0 голосов
/ 12 декабря 2018

Кто-нибудь знает, как проверить файлы sql для пользовательских правил checkstyle.Например:

ALTER TABLE MYLOCALSCHEME.MYTABLE ...

должно быть

ALTER TABLE MYTABLE ...

без имени схемы,

потому что в разных средах разные схемы.

1 Ответ

0 голосов
/ 13 декабря 2018

проверка файлов sql для пользовательских правил checkstyle

Если вы не хотите создавать собственный синтаксический анализатор antlr для языка, вы можете использовать RegexpSingleline для создания некоторых базовых правил с помощью регулярных выражений.

Пример конфигурации:

<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
          "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
          "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">

<module name="Checker">
  <property name="fileExtensions" value="sql"/>

  <module name="RegexpSingleline">
    <property name="format" value="ALTER TABLE \w+\.\w+"/>
    <property name="minimum" value="0"/>
    <property name="maximum" value="0"/>
  </module>
</module>

Пользовательский парсер будет включать новый g4 Lexer и Parser, новый класс, который выполняет итерации по узлам (как TreeWalker), класс AST (как DetailAST)базовый класс для всех новых проверок (AbstractCheck), а затем любые новые проверки, которые вы хотите.

...