앱 서명을하고 key.jks
, key.properties
, buildTypes
, signingConfigs
모두 설정을 잘 해주었지만 갑자기 flutter build appbundle
명령어를 실행하면 오류가 발생한다.
flutter build appbundle ok | 3s | 19:13:15
💪 Building with sound null safety 💪
FAILURE: Build failed with an exception.
* 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 key from store "/Users/terman/dev/odot/android/app/key.jks": Integrity check failed: java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 not available
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 5s
Running Gradle task 'bundleRelease'... 7.4s
Gradle task bundleRelease failed with exit code 1
-storetype JKS
옵션 사용하기
// 기존
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
// -storetype 옵션
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key -storetype JKS
java9 부터는 default storetype이 pkcs12
라고 한다.
본인 pc에 java8이 깔렸는지 java9 이상이 깔려있는지 java9 이상이라면 확인을 하고 위의 해결볍을 사용하면 된다.
나는 java8인데 왜 안되지,, 자동 업데이트 체크해놓았는데 이번에 바뀐건가
예전에는 -storetype
옵션 없이 잘 되었었는데 갑자기 안 되어서 한 번 해보았더니 잘 된다 :-)