0

昨天我用那些更新了 OS X 中的 java SE

$ java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)

ADT 停止编译我的应用程序,没有其他任何变化,阅读了很多似乎是这个升级是问题,最重要的一个是我没有找到如何降级 java 版本或修复这个问题,无法更新到 java SE 7,因为 Android 它基于 java SE 6(更准确地说是不完全支持 java SE 6 的 Apache Harmony)。

还有另一种解决方法吗?

Im using OS X Mountain Lion 10.8.1
Java SE 6 "1.6.0_35-b10-428-11M3811"
Eclipse 4.2.0
ADT 20.0.3.v201208082019-427395

在我得到的 LogCat

Package com.xxx.xxx has no certificates at entry res/drawable/close.png; ignoring!

并且项目没有这样的文件,所以我假设它是Android SDK本身的可绘制对象。

4

1 回答 1

0

问题是一些似乎与这个 java 版本冲突的库,在这种情况下是 org.apache 中的所有库 commons-io 和 commons-lang3,当从那里删除不需要的文件时,我能够编译它。

确切的控制台日志是

Installation error: INSTALL_PARSE_FAILED_NO_CERTIFICATES
Error generating final archive: Found duplicate file for APK: templates/release-notes.vm
Origin 1: path_to_project/libs/commons-lang3-3.1-sources.jar
Origin 2: path_to_project/libs/commons-lang3-3.1.jar

有 2 个错误,当删除这些文件时我能够运行它,当我尝试复制它时,我只是得到了 APK 的重复文件,似乎安装后密钥库被清理或类似的东西,这个特定的错误停止apk的编译和签名。

于 2012-09-07T21:52:29.077 回答