簡體   English   中英

帶有exp4j庫的Android java.lang.VerifyError

[英]Android java.lang.VerifyError with exp4j Libraries

我試圖制作自己的小型計算器,但我不想自己制作所有業務邏輯。 所以我試着使用javax.script因為聽說javax.script需要一個真正的JVM並且是一個JavaScriptParser。 然后,我搜索了具有所需功能的其他庫,並找到了項目“ exp4j”。 首先,我使用JDK 1.7創建了一個小型的普通Java項目,是的,它可以與源代碼一起使用:

public static void main(String[] args) throws UnknownFunctionException, UnparsableExpressionException {
    ExpressionBuilder builder=new ExpressionBuilder("34*2");
    Calculable calc=builder.build();
    System.out.println(calc.calculate());
}

然后,我在計算器的模型(MVC模式)中嘗試了相同的代碼:

public void berechnen() throws UnknownFunctionException, UnparsableExpressionException {
    ExpressionBuilder builder=new ExpressionBuilder("34*2");
    Calculable calc=builder.build();
    setErgebnis(calc.calculate());
}

但是每次我遇到同樣的例外:

“ AndroidRuntime(630):java.lang.VerifyError”,

我啟動應用程序后。 我無法單擊運行berechnen()方法的按鈕,因為啟動后該應用程序崩潰了。

我很困惑為什么我的程序無法正常工作。 當我刪除所有導入的exp4j並刪除計算源時,我的計算器可以正常工作。

我唯一的想法是exp4j庫使用的是Android中不存在的類或方法。

謝謝。

您可能包含兩次jar,在libs文件夾和屬性的庫中檢查一次,過去我也遇到過相同的事情,您需要刪除庫中的內容並將其新鮮粘貼到android應用程序項目的res/lib文件夾中,然后清除您的項目

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM