繁体   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