我正在开发一个netbeans模块,按照tutorial来解析html
标记。
对于关键字html
,我写了以下javacc文件。
options {
JAVA_UNICODE_ESCAPE = true;
ERROR_REPORTING = false;
STATIC = false;
COMMON_TOKEN_ACTION = false;
TOKEN_FACTORY = "Token";
JDK_VERSION = "1.8";
BUILD_PARSER = false;
}
PARSER_BEGIN(HTMLParser)
package org.html.jcclexer;
import java.io.*;
/**
* Grammar to parse Java version 1.5
* @author Sreenivasa Viswanadha - Simplified and enhanced for 1.5
*/
public class HTMLParser {}
PARSER_END(HTMLParser)
/* WHITE SPACE */
TOKEN :
{
< WHITESPACE:
" "
| "\t"
| "\n"
| "\r"
| "\f">
}
TOKEN : { < HTML : "html" > }
它完美地标记了我的html
字,然后它给出了错误:
java.lang.IllegalArgumentException: Token id must not be null. Fix lexer org.html.lexer.HTMLexer@1e6bbd25
test.html 仅包含以下字词:
HTML
由于我的.jj
文件或其他内容,我不确定是否有错误。