Я использую hive-exe c: 2.1.0 для синтаксического анализа куста sql в дополнение к тому, чтобы что-то делать с привилегиями. Сегодня я обнаружил, что он не работает с sql, как это, обратите внимание, что есть пробел между a и b: выберите 1 как a b
.
Я получил такую ошибку: предикат с ошибкой идентификатора правила: {allowQuotedId ()}?
Я также пытался отладить его, чтобы найти что с этим случилось, поэтому я обнаружил, что ошибка возникает в ParserDriver: 190. Вот код:
HiveLexerX lexer = new HiveLexerX(new ANTLRNoCaseStringStream(command));
TokenRewriteStream tokens = new TokenRewriteStream(lexer);
В то время «токены» уже содержат ошибки, но на самом деле я только что нашел «init () ", и я не нашел несколько потоков. Кто и когда помещал ошибки? Я что-то потерял? Спасибо большое!