我最近不得不使用解析器来做项目.我下载ANTLR4并按照本书中描述的步骤操作The Definitive ANTLR4 Reference.以下是我在命令行中键入的步骤:
1. export CLASSPATH=".:/<Mydirectory>/antlr-4.2.2-complete.jar:$CLASSPATH"
2. alias antlr4='java -jar /<My directory>/antlr-4.2.2-complete.jar'
3. alias grun='java org.antlr.v4.runtime.misc.TestRig'
4. antlr4 Hello.g4
Run Code Online (Sandbox Code Playgroud)
所有的工作都很好,它生成我需要的java文件.但是,在我进入之后
5. grun Hello r -tokens
Run Code Online (Sandbox Code Playgroud)
它报道
无法加载Hello作为词法分析器或解析器.
我谷歌一些信息,但仍然无法弄清楚发生了什么.
Sam*_*ell 35
您通过在语法上运行ANTLR来生成Java源文件,但TestRig正在查找已编译的.class文件.在使用TestRig之前,需要在源文件上运行Java编译器.
smw*_*dia 23
我在Windows上遇到了完全相同的错误.我的批次最初设置如下:
java -cp "C:\ANTLR\antlr-4.4-complete.jar" org.antlr.v4.runtime.misc.TestRig %*
事实证明我所有编译的Hello*.class文件都位于当前文件夹中,我忘了将其包含current folder在-cp.我改成以下后.有用.注意中的前导点-cp.
java -cp ".;C:\ANTLR\antlr-4.4-complete.jar" org.antlr.v4.runtime.misc.TestRig %*
| 归档时间: |
|
| 查看次数: |
19419 次 |
| 最近记录: |