您好我有一组java类,当我使用javac
命令编译它们时效果非常好:
javac -g -nowarn -classpath /usr/class/cs143/cool/lib:.:/usr/java/lib/rt.jar ASTConstants.java ASTParser.java cool-tree.java
我在同一台机器上安装了groovy,并尝试执行以下操作:
groovyc -classpath /usr/class/cs143/cool/lib:.:/usr/java/lib/rt.jar ASTConstants.java ASTParser.java cool-tree.java
似乎groovy无法理解java文件及其抛出错误,如:
ASTParser.java: 21: unexpected token: protected @ line 21, column 3.
protected static final short _production_table[][] =
^
我有点困惑。那些所有java程序都是有效的groovy代码吗?只有反之亦然吗?
我犯了错误?
提前致谢。
答案 0 :(得分:4)
有一些怪癖。曾经是内部类的一些问题(现在可以在2.x中解决),你可能需要观察你的字符串文字中的内容(例如,杂散的美元符号)。使用文字作为数组定义可能是一个问题(例如,int [] ary = {};
不会在groovy中飞行)。此外,并不经常出现,但他们自己使用的范围括号混淆了groovy。
在您的特定情况下,只需将short _production_table [][]
更改为short [][] _production_table
即可。我认为应该清楚你的问题。