我正在使用EclipseAndroid插件来构建一个项目,但我在控制台窗口中获取此错误:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
如何修复?
我正在使用EclipseAndroid插件来构建一个项目,但我在控制台窗口中获取此错误:
[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!
如何修复?
当前回答
必须删除所有development.apk文件很痛苦,因为新证书不匹配,因此无法在所有AVD中升级它们。您还必须获得另一个开发MAP-API密钥。还有另一种解决方案。
您可以在debug.keystore中创建自己的调试证书,其有效期为所需的任何期限。在HOME目录下的.android文件夹中执行此操作:
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 14000
keytool.exe可以在JDK bin文件夹中找到(例如Windows上的C:\Program Files\Java\jdk1.6.0_31\bin\)。
ADT将证书上的名字和姓氏设置为“AndroidDebug”,组织单位设置为“Android”,两个字母的国家代码设置为“US”。您可以将组织、城市和州值保留为“未知”。此示例使用14000天的有效期。你可以使用你喜欢的任何价值。
其他回答
在Vista上,这是有效的:
DOS:del c:\user\dad\.android\debug.keystoreECLIPSE:在项目中,清理项目。关闭Eclipse。重新打开Eclipse。ECLIPSE:启动仿真器。从仿真器中删除应用程序。
你可以走了。
当我说这个错误时,我非常担心,但我通过阅读这里并在周围玩了10分钟来解决了这个问题。
必须删除所有development.apk文件很痛苦,因为新证书不匹配,因此无法在所有AVD中升级它们。您还必须获得另一个开发MAP-API密钥。还有另一种解决方案。
您可以在debug.keystore中创建自己的调试证书,其有效期为所需的任何期限。在HOME目录下的.android文件夹中执行此操作:
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 14000
keytool.exe可以在JDK bin文件夹中找到(例如Windows上的C:\Program Files\Java\jdk1.6.0_31\bin\)。
ADT将证书上的名字和姓氏设置为“AndroidDebug”,组织单位设置为“Android”,两个字母的国家代码设置为“US”。您可以将组织、城市和州值保留为“未知”。此示例使用14000天的有效期。你可以使用你喜欢的任何价值。
安装后,AndroidSDK会在名为debug.keystore的密钥库中为您生成一个调试签名证书。Eclipse插件使用该证书对生成的每个应用程序构建进行签名。
不幸的是,调试证书仅在365天内有效。要生成新文件,必须删除现有的debug.keystore文件。它的位置依赖于平台-您可以在Preferences-Android-Build-Default-debug密钥库中找到它。
Android SDK在一个名为debug.keystore的密钥库中为您生成一个“调试”签名证书。Eclipse插件使用该证书对生成的每个应用程序构建进行签名。
不幸的是,调试证书仅在365天内有效。要生成新文件,必须删除现有的debug.keystore文件。它的位置依赖于平台-您可以在Preferences->Android->Build->*默认调试密钥库中找到它。
如果您使用的是Windows,请执行以下步骤。
DOS:del c:\user\dad.android\debug.keystore
Eclipse:在Project中,清理项目。关闭Eclipse。重新打开Eclipse。
Eclipse:启动Emulator。从仿真器中删除应用程序。
如果您使用的是Linux或Mac,请执行以下步骤。
从.android文件夹中手动删除debug.keystore。
您可以找到如下.android文件夹:home/username/.android
注意:默认的.android文件将被隐藏。
所以点击地点菜单。在下面选择主文件夹。在点击视图下,点击显示隐藏文件,然后.android文件夹将可见。
从.android文件夹中删除debug.keystore。
然后清理项目。现在Android将生成一个新的.Android文件夹文件。
高度m-m。有趣的是,这么多人在这方面的经历略有不同。我记得有几天,这被认为是软件尚未准备好发布的信号,团队实际上会在用户开始看到这些问题之前修复它:(
我自己的经历有点不同。我已经尝试过Project>Clean,但仍然遇到同样的构建失败。然后我删除了debug.keystore(在.android下),正如第一个答案所说。还是有同样的问题。然后我又做了一次清洁,奇迹般的,它奏效了!
现在别误会了,我很高兴我在这篇文章中得到了提示。但很明显,clean无法正常工作,在我删除密钥库后,它是如何找到过期密钥的???显然Eclipse或ADT有问题——不太确定是哪一个。