我遇到了这组导致内存溢出并最终导致Eclipse崩溃的警告。
这是一个包含twitter4J core jar作为参考库的Android应用程序。这是使用谷歌api (com.google.android.),所以我将目标设置为谷歌api,而不是一般的ADK。问题在这里。
[2011-11-18 08:29:24 - Twitter] Dx警告:忽略匿名内部类的InnerClasses属性(org.apache.tools.ant.taskdefs.Parallel$1)关联的EnclosingMethod属性。这个类可能是由编译器不以现代的。class文件格式为目标。推荐的解决方案是使用最新的编译器从源代码重新编译类并且不指定任何"-target"类型选项。忽视的后果此警告是该类上的反射操作将错误地说明不是内部类。
这种类型的警告持续到大约20个内部类(在taskdefs中大约6个),并且控制台中提到的所有内部类都来自org.apache.tools.ant。
我将Java SE 6升级到Mac OS X Lion的1.6,使用http://mac.softpedia.com/get/System-Utilities/Java.shtml,
但问题仍然存在。我应该升级我的蚂蚁吗?我的ant版本是1.8.2。
这是使用JDK 1.4或更早版本编译的一些库的结果。解决方案是将其全部重新编译为新的.jar文件,以便Android Mock使用
这在编译项目时发生。只需将以下内容添加到您的proguard规则中。支持文件。此警告将消失。
-keepattributes EnclosingMethod