我是 ANTLR 新手,正在尝试解析 ASP 文件。我在树上行走时遇到以下错误。
线程“main”中的异常 java.lang.StackOverflowError 位于 org.antlr.v4.runtime.atn.LexerATNSimulator.getEpsilonTarget(LexerATNSimulator.java:495) 位于 org.antlr.v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java) :476)在org.antlr.v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java:478)在org.antlr.v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java:478)在org.antlr。 v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java:478) 在 org.antlr.v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java:458) 在 org.antlr.v4.runtime.atn.LexerATNSimulator。闭包(LexerATNSimulator.java:478)在 org.antlr.v4.runtime.atn.LexerATNSimulator.closure(LexerATNSimulator.java:478)
请提出可能的根本原因。
**Lexer Grammar**
lexer grammar ASPLexer;
HTML_COMMENT
: '<!--' .*? '-->'
;
HTML_CONDITIONAL_COMMENT
: '<![' .*? ']>'
;
XML_DECLARATION
: '<?xml' .*? '>'
;
CDATA
: '<![CDATA[' .*? ']]>'
;
DTD
: '<!' .*? '>'
;
SCRIPTLET
: '<?' .*? '?>'
| '<%' .*? '%>'
;
SEA_WS
: (' '|'\t'|'\r'? '\n')+
;
SCRIPT_OPEN
: '<script' .*? '>' ->pushMode(SCRIPT)
;
STYLE_OPEN
: '<style' …Run Code Online (Sandbox Code Playgroud)