我正在使用EclipseAndroid插件来构建一个项目,但我在控制台窗口中获取此错误:

[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!

如何修复?


几周前我遇到了这个问题。我第一次在Android开发者网站上尝试了故障排除,但没有运气。之后,我重新安装了Android SDK,这解决了我的问题。


在Linux和Mac OS X上删除~/.android/debug.keystore下的调试证书;该目录类似于%USERPROFILE%/.androidon Windows。

当您下次尝试构建调试包时,Eclipse插件应该生成一个新的证书。您可能需要清理并生成证书。


安装后,AndroidSDK会在名为debug.keystore的密钥库中为您生成一个调试签名证书。Eclipse插件使用该证书对生成的每个应用程序构建进行签名。

不幸的是,调试证书仅在365天内有效。要生成新文件,必须删除现有的debug.keystore文件。它的位置依赖于平台-您可以在Preferences-Android-Build-Default-debug密钥库中找到它。


在Vista上,这是有效的:

DOS:del c:\user\dad\.android\debug.keystoreECLIPSE:在项目中,清理项目。关闭Eclipse。重新打开Eclipse。ECLIPSE:启动仿真器。从仿真器中删除应用程序。

你可以走了。

当我说这个错误时,我非常担心,但我通过阅读这里并在周围玩了10分钟来解决了这个问题。


高度m-m。有趣的是,这么多人在这方面的经历略有不同。我记得有几天,这被认为是软件尚未准备好发布的信号,团队实际上会在用户开始看到这些问题之前修复它:(

我自己的经历有点不同。我已经尝试过Project>Clean,但仍然遇到同样的构建失败。然后我删除了debug.keystore(在.android下),正如第一个答案所说。还是有同样的问题。然后我又做了一次清洁,奇迹般的,它奏效了!

现在别误会了,我很高兴我在这篇文章中得到了提示。但很明显,clean无法正常工作,在我删除密钥库后,它是如何找到过期密钥的???显然Eclipse或ADT有问题——不太确定是哪一个。


必须删除所有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天的有效期。你可以使用你喜欢的任何价值。


如果证书在项目调试过程中过期,则必须手动卸载:

请执行adb在shell中卸载<package_name>。


在Mac上,打开终端(当前用户的目录应该打开),cd“.android”(“ls”验证debug.keystore)。最后使用“rm-debug.keystore”删除文件。


窗户

删除:debug.keystore位于C: \Documents and Settings\\[user]\.android,清理并构建项目。

Windows 7转到C:\Users\[用户名]\.android并删除debug.keystore文件。

清理并构建项目。

雨衣

删除位于~/.android/debug.keystore Clean中的密钥库并构建项目。

在所有选项中,如果无法获取新的debug.keystore,请重新启动eclipse。


在Ubuntu上,这是有效的:

我转到home/username/.android,将keystore.debug重命名为keystore.debug。然后关闭Eclipse,启动Eclipse,SDK在该文件夹中创建了新的证书keystore.debug。

然后,您必须卸载/重新安装通过USB调试或未签名APK(“未签名”APK=使用调试证书签名)安装的应用程序。


在Windows 7中,它位于路径

C:\Users\[username]\.android

转到此路径并删除debug.keystore清理并构建项目。


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文件夹文件。


对于windows xp,请转到C:\Documents and Settings\%userprofile%\.android并删除debug.keystore文件,重新启动eclipse,现在您的项目就可以无错误地进行构建。

示例路径:

C:\Documents and Settings\raja.ap\.android\

请阅读此处了解更多信息。


在Windows debug.keystore中,文件位于C:\Users\%Username%\.android文件夹中。此文件是在安装android SDK时创建的,有效期仅为一年。在此之后,您将开始收到此错误获取最终存档时出错:调试证书已于xx/xx/xxxx过期。

要删除此错误,只需删除文件并再次运行程序。在我的Eclipse中,我启用了Project->Build Automatically,所以它可以直接工作,但如果您禁用了它,则需要清理项目Project->clean。。选择您的项目并按ok。然后您需要手动构建它。第三次单击项目并选择Build project。(注意-只有在“项目”菜单中禁用了“自动生成”功能时,才会看到此选项)


首先关闭日食

通过窗口键+R或以管理员身份运行打开CMD

遵循以下步骤

del "%USERPROFILE%\.android\debug.keystore"
keytool -genkey -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 30000

在这次重启eclipse之后。


要解决此问题,只需删除debug.keystore文件。

AVD的默认存储位置为

在OS X和Linux上的~/.android/中。在Windows XP上的C:\Documents and Settings\.android\中在Windows Vista和Windows 7上的C:\Users\.android\中。

另请参阅此链接,这可能会有所帮助。

http://developer.android.com/tools/publishing/app-signing.html


在Eclipse中安装AndroidSDK后,它会在一个名为debug.keystore的密钥库中为您生成一个调试签名证书。Eclipse插件使用该证书对生成的每个应用程序版本进行签名。

现在,这个调试证书的问题是它只在一年或365天内有效。如果您的EclipseIDE使用过期的调试证书,您将无法创建和/或部署Android应用程序。

要解决此问题,只需删除debug.keystore文件。

转到首选项安卓建筑默认调试密钥库

在那里,您应该可以看到文件所在的文件夹。只需删除该文件,您就可以离开了。

了解更多信息。您可以访问

http://developer.android.com/tools/publishing/app-signing.html


删除位于C:\Users\%Username%\.android文件夹中的debug.keystore。然后运行应用程序。它将生成新的。