当我尝试导出我的android应用程序时,我收到以下错误消息。
[2012-05-02 14:34:07 - MyApplication] Dx
trouble processing "java/nio/CharBuffer.class":在不构建核心库时,不明智或错误地使用核心类(java.*或javax.*)。
这通常是由于在使用IDE (如Eclipse)时,无意中在应用程序的项目中包含了一个核心库文件。如果你确定你不是故意定义一个核心类,那么这是最有可能的解释。
但是,您可能实际上正在尝试在核心名称空间中定义一个类,例如,您可能从非Android虚拟机项目中获取了该名称空间的源代码。这肯定是行不通的。至少,它会危及应用程序与平台未来版本的兼容性。它的合法性也经常受到质疑。
如果您真的想要构建一个核心库--这只适合作为创建一个完整的虚拟机发行版的一部分,而不是编译一个应用程序--那么使用"-- core - library“选项来消除这个错误消息。
如果您继续使用"--core-library“,但实际上是在构建一个应用程序,那么要预先警告您的应用程序在某个时刻仍然无法构建或运行。请为愤怒的客户做好准备,例如,一旦他们升级了操作系统,您的应用程序就会停止运行。你将为这个问题承担责任。
如果您合法地使用了一些恰好位于核心包中的代码,那么最简单、最安全的替代方法就是重新打包这些代码。也就是说,将有问题的类移动到您自己的包命名空间中。这意味着它们永远不会与核心系统类冲突。JarJar是一个可能在这方面对你有帮助的工具。如果你发现你不能做到这一点,那么这表明你所走的道路最终将导致痛苦、痛苦、悲伤和悲哀。
[2012-05-02 14:34:07 - MyApplication] Dx 1 error; aborting
[2012-05-02 14:34:07 - MyApplication] Conversion to Dalvik format failed with error 1
[2012-05-02 14:42:22 - MyApplication] Dx
trouble processing "java/nio/CharBuffer.class":
Ill-advised or mistaken usage of a core class (java.* or javax.*)
when not building a core library.发布于 2012-05-02 20:19:55
我找到了解决方案..。
我下载了proguard的最新版本,它已经修复了。
发布于 2012-05-02 20:16:31
是否正确包含外部引用。当你使用外部api时,经常会出现导出问题,尽管显然没有错误。请继续查看参考资料。
https://stackoverflow.com/questions/10413224
复制相似问题