最近在做一个uni的支付宝授权插件,第一次用Android studio 跑uni的项目,测试项目跑起来了,新建的class 也能用,因为在支付宝中填写keystore密钥和包名,所以把在uni的原生工程自带的test.jks和包名替换成自己的keystore文件和包名,这样才能吊起支付宝。在替换的时候报了以下的错误:
Execution failed for task ':app:packageDebug'.
A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
com.android.ide.common.signing.KeytoolException: Failed to read key deli from store "/Users/simple/Desktop/Android-APP/Android-SDK@3.8.7.81902_20230704/UniPlugin-Hello-AS/app/deli.keystore": Invalid keystore format
后面在百度找了一下午没解决,第二天再找的时候,发现一篇文章:
https://blog.csdn.net/chenya866/article/details/125642867
解决办法:
右键项目目录-->Open Module Settings --> SDK Location --> Gradle Settings --> Gradle JDK 中选择jdk 11的版本,卸载APP重新跑项目就可以了
可能原因是我创建的证书是jdk 11 版本的