我编写了一个非常简单的文件,其规范如下所示:
%%
%class Lexer
%unicode
WORD = [^rnt ]
%%
{WORD} {System.out.println("Word is:"+yytext());}
. {System.out.println("Bad character: "+ yytext());}
我运行的命令如下:
jflex hindi.jlex
javac Lexer.java
我得到以下错误:
Lexer.java:442: cannot find symbol
symbol : class Yytoken
location: class Lexer
public Yytoken yylex() throws java.io.IOException {
^
1 error
感谢您的帮助。
我检查了Lexer.java
文件,其中没有main
功能。
如果您想要独立检查词法分析器(没有解析器),那么将以下内容添加到用户代码部分:
%standalone
使用byaccj并得到此错误的人应该在%class Lexer
行下面添加%byaccj
行而不是%standalone