我正在阅读Joshua Engel编写的Java虚拟机编程,并且尝试输入本书中的示例之一。我知道这本书使用的是Oolong,而我使用的是Jasmin,但是对于这样一个简单的示例,由于Oolong和Jasmin的语法非常相似,所以我不明白为什么这是行不通的。附带说明,我无法找到有关Oolong和Jasmin之间语法差异的任何信息。谁能指出我这种资源?
这里是代码,与书中的代码完全相同:
.class Test
.method static run()I
bipush 9
bipush 6
imul
ireturn
.end method
并且当我对此运行Jasmin时,出现以下错误:
Test.j:2: Warning - Syntax error.
.method
^
Test.j:2: Error - Couldn't repair and continue parse.
.method
^
所以我做错了什么?
Jasmin在.super
之后需要.class
关键字。
以下代码应该可以正常编译:
.class Test
.super java/lang/Object
.method static run()I
bipush 9
bipush 6
imul
ireturn
.end method