0

我在 Eclipse 中处理的 android 项目使用 maven 来引入 JAR 文件。其中一个 jar 文件中包含本机 *.so 文件,导致弹出此错误,然后是内存大小问题导致 IDE 崩溃。

[2014-03-26 08:42:23 - **] Dx 警告:忽略不带有关联 EnclosureMethod 属性的匿名内部类 (org.ibex.nestedvm.util.Sort$1) 的 InnerClasses 属性。此类可能是由不针对现代 .class 文件格式的编译器生成的。推荐的解决方案是从源代码重新编译类,使用最新的编译器并且不指定任何“-target”类型选项。忽略此警告的后果是此类上的反射操作将错误地指示它不是内部类。

[2014-03-26 08:43:10 - **] 库“sqlite-jdbc-3.7.2.jar”包含不会在设备上运行的本机库。

[2014-03-26 08:43:10 - **] 找到以下库:

[2014-03-26 08:43:10 - **] - 本机/Linux/amd64/libsqlitejdbc.so

[2014-03-26 08:43:10 - **] - 本机/Linux/i386/libsqlitejdbc.so

[2014-03-26 08:43:10 - **] - 本机/Mac/i386/libsqlitejdbc.jnilib

[2014-03-26 08:43:10 - **] - 本机/Mac/x86_64/libsqlitejdbc.jnilib

一些 SO 评论建议重新编译 JAR 以不包含 *.so 文件并有适当的目标来删除第一个警告。 链接

我做了任何人一开始通常都会做的事情,并升级了我的 ADT 和 Eclipse 工具。现在我收到以下警告:

[2014-03-26 14:17:08 - **] Dx 写入输出故障:已经准备好了

IDE 不再崩溃(我升级了 eclipse ini 文件以将内存提升 4 倍)并且之前的警告已经消失。ADT 现在是 22.6.2 版本,之前是 22.6.0。

所以这里的问题是:这是一个真正的修复还是现在被掩盖了?

4

1 回答 1

0

If you don't necessary Linux and Mac in your development time, remove these folders form sqlite-jdbc-xxx.jar. Open jar file by using zipping tools and remove it.

When you need these package, add again into the jar.

于 2014-05-09T10:23:11.323 回答