2013-09-25 65 views
0

我開發了一個名爲Ticker的實用工具。J2ME preverify StackMap不存在

我裝在一個罐子裏,並嘗試在不同的項目中使用。

我正在使用Eclipse。在創建二進制文件(JAD/JAR)時,我收到了預驗證錯誤。

之後,我嘗試了一種解決方法。我創建了二進制文件,並在其中手動注入所需的類

當我試圖運行Sun模擬器(WTK 2.5 DefaultColorPhone)獲取預驗證錯誤。另一方面,構建在KEmulator上運行良好(您只知道KEmulator在JVM而不是KVM上運行)。

隨後,我看了一個庫,發現類沒有驗證。

然後我使用WTK preverify.exe進行驗證;但是我注意到4,2個類沒有預先驗證(StackMap條目缺失)。

類層次

  • Ticker.java //Verified

  • Text.java延伸Component.java //Verified

  • Component.java延伸TimeControlled.java //Not Verified

  • TimeControlled。 java //Not Verified

請讓我擺脫那。

阿米特

回答

0

在過去,我已經通過創建一個Ant腳本Antenna做到了這一點:

。編譯Java源
< wtkbuild SRCDIR = 「./ SRC」 DESTDIR = 「./類」 預驗證= 「假」/ >

。複製您的資源
<副本todir = 「./班」 >
<文件集DIR = 「./資源」/ >
< /複製>

。提取庫罐子
<不能解壓縮SRC = 「./ LIB/Ticker.jar」 DEST = 「./類」/ >

。預驗證一切
< wtkpreverify SRCDIR = 「./類」 DESTDIR = 「./類」/ >

。打包你的jar文件
< wtkpackage jarfile =「myapp.jar」jadfile =「myapp。JAD 「>
<文件集DIR =」 ./類「/ >
</wtkpackage >