2009-03-05 77 views
5
java.lang.VerifyError: (class: a method: parse signature: 
()Z) Incompatible argument to function 

public boolean parse() { 


} 

這個錯誤是什麼意思,以及如何解決這些類型的錯誤java的郎校驗錯誤

+0

你能給出一個* complete *代碼示例以及關於你正在使用哪個JVM,主機平臺等的一些背景信息? – JesperE 2009-03-05 07:58:00

回答

5

通常這種錯誤是與版本的問題,您使用的是不同版本的庫比您正在使用運行編譯。在java 1.5類型的強制轉換中,也會出現一些相當微妙的變體,1.4編譯器會選擇不同的方式。用1.5重新編譯所有東西,並確保你使用的是相同的版本。

1

我剛剛發現這一點:

時拋出的「校驗器」檢測 到一個類文件,雖然格式良好,但是 包含某種內部不一致或安全問題。 Java API

您是否返回了布爾值?

請問您能否提供更多信息,設置哪個環境?我想,安全問題很重要。

2

它通常是關於Java 1.5或6兼容性問題(如嘗試編譯Java5或6代碼與舊的1.4 javac)。

清理所有.class文件並從頭開始重建,檢查是否將JDK和JRE放在同一級別。


它也可以是從第三方類方法「返回項目」到您的本地的一個不好的類型轉換。

0

好吧,首先好像是返回值是missong。 您應該返回一個布爾值。 但這不是問題。 這種異常的,當你在一個循環

的作個參考,不能得到解決, 像assignement出現(I = I,I = XX;!我++)

檢查這種引用。

路易斯