构建AAB时出错-Flutter(Android)-完整性检查失败:java.security.NoSuchAlgorithmException:算法HmacPBESHA256不可用

我正在尝试为我的颤振应用程序构建一个 AAB。我使用以下命令生成了密钥库:

keytool -genkey -v -keystore ~/pc-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias pckey

我有一个key.properties文件,我使用 flutter 文档中提供的代码引用了它。如何解决此 Java 相关问题?我的程序抛出以下异常

* What went wrong:                                                      
Execution failed for task ':app:signReleaseBundle'.                     
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Failed to read key pckey from store "/Users/jrperfetto/pc-keystore.jks": Integrity check failed: java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 not available
                                                   

回答

事实证明,我使用与我的应用程序用于构建应用程序不同的 Java 版本生成我的签名密钥。您可以通过运行 flutter doctor -v 并查看 Java 二进制文件的位置来检查这一点,并将其与运行“which java”时进行比较。

解决方案是运行带有在 flutter doctor 输出中找到的 Java bin 位置前缀的 keygen 命令,如下所示:

/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/keytool -genkey -v -keystore ~/pc-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias pckey


以上是构建AAB时出错-Flutter(Android)-完整性检查失败:java.security.NoSuchAlgorithmException:算法HmacPBESHA256不可用的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>