Согласно JavaCC documentation, если я хочу, чтобы настроить сообщения, данные ошибками в лексере:JavaCC: Настройка сообщений об ошибках лексера
Чтобы настроить отчеты об ошибках лексера, класс лексических должны быть подклассами и это метод [
LexicalError()
вTokenMgrError
] переопределен в подклассе. Для того, чтобы помочь с созданием вашей схемы отчетности ошибки, то доступны следующие переменные:
Однако, я не вижу ничего о том, как получить сгенерированный код, чтобы использовать этот подкласс, в отличие от варианта TOKEN_FACTORY
.
С другой стороны, если посмотреть в источнике TokenMgrError
, некоторые комментарии указывают, что исходный файл должен быть непосредственно отредактирован, а не подклассом. Однако, если я сделаю это в следующий раз изменить файл .jj
и Ant регенерировать анализатор и код лексического анализатора, я получаю это предупреждение:
Предупреждения: TokenMgrError.java: Файл является устаревшим. Пожалуйста, переименуйте или удалите этот файл, чтобы новый был создан для вас.
Итак, как я должен это делать?
Значит, «файл устарел»? Предупреждение ложно? Есть ли способ подавить это предупреждение? –
Да, это подделка. Я не знаю способа подавить предупреждение. –