Dx warning: Ignoring InnerClasses attribute for an anonymous inner class 错误 和Dx UNEXPECTED TOP-LEVE

这几天用ADT的fatjar 打包多个 jar包 成一个 jar 时,遇到了下面2个问题。

Dx warning: Ignoring InnerClasses attribute for an anonymous inner class
(com.xxx.android.phone.mrpc.core.j) that doesn’t come with an
associated EnclosingMethod attribute. 错误

Dx UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.cf.iface.ParseException: bad class file magic (00051607) or version (0000.0002) 错误

然后我折腾了几天,尝试过各种打包方法,甚至是换到AS操作。都没搞定。
最后。。果然工程出错了,崩溃报错信息是最有利于解决问题的。。

Dx warning: Ignoring InnerClasses attribute for an anonymous inner class报错——
Dx warning: Ignoring InnerClasses attribute for an anonymous inner class 错误 和Dx UNEXPECTED TOP-LEVE_第1张图片

om.android.dx.cf.iface.ParseException报错——
Dx warning: Ignoring InnerClasses attribute for an anonymous inner class 错误 和Dx UNEXPECTED TOP-LEVE_第2张图片

冷静下来仔细看报错信息,看到最后一行,_MACOSX
在苹果系统中,_MACOSX 是隐藏的,看不见的文件夹。其实它是一个 文件夹文件的排列顺序、属性等各种配置文件,而在我打包过程中。。这个也一起打包进去了,而造成了编译时报错。。
当我解压jar 包时,在 windows 系统中。也会看到另外一个 文件夹 .DS_Store
嗯。。这个也是坑爹的苹果系统的 Finder 文件夹管理属性文件。
也是一并打包进去了。。而当我百度时,也并没有找到类似的错误。坑爹的Mac 系统。。
蛋碎了一个星期。。嗯,到此结贴。
解决方法就是:因为在Mac 系统中是看不到那些隐藏文件的,所以,我是转换到windows 系统中,删除了上述文件,再重新打包,运行就没有问题了。
重点:项目崩溃报错信息一定要仔细阅读!

你可能感兴趣的:(Dx warning: Ignoring InnerClasses attribute for an anonymous inner class 错误 和Dx UNEXPECTED TOP-LEVE)