【问题标题】:Jasmin HelloWorld Example FailingJasmin HelloWorld 示例失败
【发布时间】:2011-04-19 18:54:40
【问题描述】:

我在从 jasmin-2.4 发行版执行新编译的 HelloWorld.j 时遇到问题。

我下载了 jasmin-2.4。我可以编译使用:

java -jar jasmin.jar 示例\HelloWorld.j

输出是:

生成:NoJad\j.class

当我执行新编译的程序时:

java NoJad.j

抛出异常:

线程“main”中的异常 java.lang.VerifyError: (class: NoJad/j, method: main 签名:([Ljava/lang/String;)V) 期望在堆栈上找到对象/数组 找不到主类:NoJad.j。程序将退出。

我倾向于认为这是 HelloWorld.j 示例中的一个错误。也许新的验证者发现了一个错误???

注意 1:分发中预编译的 HelloWorld.class 按预期工作。

注意 2:我使用的是这个版本的 java java版本“1.6.0_24” Java(TM) SE 运行时环境 (build 1.6.0_24-b07) Java HotSpot(TM) 64 位服务器 VM(内部版本 19.1-b02,混合模式)

这是来自发行版的 HelloWorld.j 文件:

; --- Copyright Jonathan Meyer 1996. All rights reserved. -----------------
; File:      jasmin/examples/HelloWorld.j
; Author:    Jonathan Meyer, 10 July 1996
; Purpose:   Prints out "Hello World!"
; -------------------------------------------------------------------------


.class public NoJad.j
.super java/lang/Object

;
; standard initializer
.method public <init>()V
   aload_0

   invokenonvirtual java/lang/Object/<init>()V
   return
.end method

.method public static main([Ljava/lang/String;)V
   .limit stack 2
   .limit locals 2

   bipush 2
   astore 0
   bipush 3
   astore 1

   aload 0
   aload 1
   astore 0
   astore 1

   return
.end method

【问题讨论】:

    标签: java jasmin


    【解决方案1】:

    问题是 HelloWorld.j 文件是伪造的。看到这个帖子:http://sourceforge.net/projects/jasmin/forums/forum/349052/topic/3330588

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-07
      相关资源
      最近更新 更多