提问



我正在使用Eclipse Android插件来构建项目,但我是
在控制台窗口中收到此错误:


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


我如何解决它?

最佳参考


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


然后,当您下次尝试构建调试包时,Eclipse插件应生成新证书。您可能需要清理然后构建以生成证书。

其它参考1


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


不幸的是,调试证书仅在365天内有效。要生成新文件,您必须删除现有的debug.keystore文件。它的位置取决于平台 - 您可以在首选项 - Android - 构建 - 默认调试密钥库中找到它。

其它参考2


很难删除所有开发.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将证书上的名字和姓氏设置为Android Debug,将组织单位设置为Android,将双字母国家/地区代码设置为US。您可以将组织,城市和州值保留为未知。此示例使用14000天的有效期。你可以使用你喜欢的任何价值。

其它参考3


在Vista上,这有效:



  1. DOS:del c:\user\dad\.android\debug.keystore

  2. ECLIPSE:在项目中,清理项目。关闭Eclipse。重新打开Eclipse。

  3. ECLIPSE:启动模拟器。从模拟器中删除应用程序。



你已准备好出发。


当我说出这个错误时,我非常担心,但是我在阅读这里并且玩了10分钟后修复了它。

其它参考4



  • WINDOWS



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



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



清理并构建您的项目。



  • MAC



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


在所有选项中如果你不能获得新的debug.keystore只需重新启动eclipse。

其它参考5


在Windows 7中,它位于路径上


C:\Users\[username]\.android



  • 转到此路径并移除debug.keystore

  • 清理并构建您的项目。


其它参考6


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


请执行
adb uninstall <package_name>在一个shell中。

其它参考7


在Mac上,打开控制台(当前用户的目录应该打开),cd.android(ls验证debug.keystore是否存在)。最后rm debug.keystore删除文件。

其它参考8


Android SDK在名为debug.keystore的密钥库中为您生成调试签名证书.Eclipse插件使用此证书对生成的每个应用程序构建进行签名。


不幸的是,调试证书仅在365天内有效。要生成新文件,您必须删除现有的debug.keystore文件。它的位置取决于平台 - 您可以在首选项 - > Android - > 构建 - > *默认调试密钥库中找到它。


如果您使用的是Windows,请按照以下步骤操作。



DOS:del c:\\ user \\ dad.android \\ debug.keystore


Eclipse:在Project中,清理项目。关闭Eclipse。重新打开Eclipse。


Eclipse:启动模拟器。从模拟器中删除应用程序。


如果您使用的是Linux或Mac,请按照以下步骤操作。



.android文件夹中手动删除debug.keystore


你可以找到这样的.android文件夹:home/username/.android


注意:默认.android文件将被隐藏。


所以点击地点菜单。在选择主文件夹下。在单击视图下,单击显示隐藏文件,然后将显示.android文件夹。


.android folder中删除debug.keystore


然后清理您的项目。现在Android将生成一个新的.android folder文件。

其它参考9


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

其它参考10


H-M-M-M有趣的是,这么多人的经历与此略有不同。我记得那些被认为是软件尚未准备好发布的迹象,并且团队实际上会在用户开始看到这些问题之前修复它:(


我自己的经历有点不同。我已经尝试过Project> Clean,但仍然遇到了相同的构建失败。然后我就像第一个回答所说的那样删除了debug.keystore(在.android下)。仍有同样的问题。然后我再次干净了,奇迹奇迹,它奏效了!


现在不要误会我的意思,我很高兴我得到它的工作,感谢这个帖子中的提示。但显然干净不正常,在删除密钥库后它是如何找到过期密钥的?显然,Eclipse或ADT出了问题 - 不太确定。

其它参考11


在Ubuntu上,这工作:


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


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

其它参考12


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


示例路径:


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


读这里换了。[51]

其它参考13


在Windows debug.keystore文件中是C:\Users\%Username%\.android文件夹中的localtes。此文件是在安装Android SDK时创建的,仅在一年内有效。在这个perod之后你将开始得到这个错误Error getting final archive: Debug certificate expired on xx/xx/xxxx


要删除此错误,只需删除该文件并再次运行该程序。在我的Eclipse中我启用了Project->Build Automatically所以它直接工作但是如果你已经禁用了它你将需要清理项目Project->Clean ..选择你的项目并按确定。然后,您需要手动构建它。第3次单击您的项目并选择Build project。(注意 - 如果您在项目菜单中自动生成自动构建功能,则只会看到此选项)

其它参考14


首先关闭日食然后


按窗口键+ 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之后。

其它参考15


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


现在,此调试证书的问题在于它仅在一年或365天内有效。 If your Eclipse IDE uses an expired debug certificate, you will not be able to create and/or deploy an Android app


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



  1. Go to Preferences

  2. Android

  3. Build

  4. Default debug keystore



在那里,您应该看到文件所在的文件夹。只需删除该文件即可。


有关更多信息。你可以拜访



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


其它参考16


要解决此问题,只需删除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[53]