编译时ANTLRWorks TestRig卡住了

时间:2014-03-23 10:14:02

标签: code-generation antlr grammar antlrworks

我最近开始使用ANTLR,并了解了ANTLRWorks IDE。虽然编辑器工作正常,但是,当我运行测试装置时,它似乎停留在编译语法文件(或者更确切地说是编译语法没有做什么?),无论我给它什么输入。这是我得到的输出:

ANTLR Codegen

  

参数:[ - o,C:\ Users \\ AppData \ Local \ Temp \ TestRigTask-1395567588803,-lib,C:\ Users \\ Desktop,-no-listener,-no-visitor,C:\ Users \\桌面\ Test.g4]

ANTLR Testrig

  

编译语法文件......

以下是我给它测试问题的输入:

语法

grammar Test;

CUP : 'cup';
MUG : 'mug';
TEA : 'tea';
COFFE: 'coffe';

drinker : 'drinking a' holder 'of' liquid;
holder : MUG | CUP;
liquid : TEA | COFFE;

测试文件

drinking a mug of coffe

我做错了什么/错过了重要的事情吗?

1 个答案:

答案 0 :(得分:5)

检查您是否使用JDK而不仅仅是JRE运行ANTLRWorks2。 ANTLRWorks需要Java编译器javac,以便编译语法以运行测试装备,javac仅包含在JDK中,而不包含在JRE中。

ANTLRWorks应该能够找到JDK(如果已安装),但如果不起作用,则可以在启动ANTLRWorks时指定--jdkhome <path>参数。