Android Studio生成签名apk NoClassDefFoundError无法初始化类javax.crypto.JceSecurity

时间:2015-01-28 12:27:27

标签: java android noclassdeffounderror

我已经搜索过这个,结果与我正在寻找的结果略有不同。非常感谢任何帮助!

我已经构建了一个使用加密技术的Android应用程序,当我测试它时,它在调试模式下完美运行,但是,当我去生成已签名的APK时(我已经更改了构建变体以发布并包含ProGuard来运行) )发生此错误: NoClassDefFoundError:无法初始化类javax.crypto.JceSecurity:无法初始化类javax.crypto.JceSecurity

我在外部库下检查了我的JDK,并且在正确的包结构下使用了1.7.0_67和JceSecurity IS。我也在jre / lib / security下有local_policy和US_export_policy jar。

在外部图书馆我有:

  • < Android API 20平台>
  • JceSecurity不在android.jar> javax.crypto中

  • < JDK> (C:程序文件...... \ jdk1.7.0_67)

  • JceSecurity位于jce.jar> javax.crypto中

这里有点混乱吗? JceSecurity类就在那里,所以我不明白它为什么找不到它。我是否需要向Manifest添加任何权限或更改build.gradle?此外,一旦进入应用程序商店,用户是否会遇到问题,因为他们的计算机上可能没有安装local_policy和US_export_policy jar? 人们有什么想法?非常感谢你提前! :)

1 个答案:

答案 0 :(得分:0)

我尝试使用不同版本的local_policy和US_export_policy jar,这似乎已经成功了!