我正在开发一个android应用程序,它需要使用commons beanutils库,但是我无法编译它。当我试图用这个jar文件运行一个应用程序时,会出现以下几个错误
DX警告:忽略匿名内部的innerClasses属性
类(org.apache.commons.beanutils.locale.localebeanutilsbean$1)
没有关联的enclosingMethod属性。这个班
可能是由一个不针对现代
.Class文件格式。建议的解决方案是重新编译类
从源代码开始,使用最新的编译器,不指定任何
“-target”类型选项。忽略此警告的后果是
这个类上的反射操作将错误地指示
它不是一个内部类。
然后出现此错误
无法执行dex:多个dex文件定义
lorg/apache/commons/beanutils/dynabean;
我在谷歌上搜索了这两个错误,并得到了几个不同的答案来解决这个问题。
Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;
此处的链接指出问题出在bin文件夹上。我试过删除它,但还是同一个问题。
然后我碰到了这条线
Are there Android compatible alternatives to Property Utils?
op声明beans util在android上不起作用。这是准确的吗?如果是这样的话,有没有其他的方法可以奏效呢?从源代码重新编译类是否有效?
任何帮助都将不胜感激!
编辑:我还试着下载了Commons Beanutils的最新版本,同一期

最佳答案

android上有一个桥库:android-java-air-bridge.jar。只需包含在Project PATH中,并使用Android项目中的所有Apache BeANUTLS特性,即可在普通Java应用程序中使用。此外,还有很多其他类迁移到这个android支持库。看看名单。
上述溶液在Are there Android compatible alternatives to Property Utils?

07-24 09:50
查看更多