expo build:android時のFailed to generate Android Keystore, it will be generated on Expo servers during the buildの解消法

Expoでアプリ開発の学習をしていて、いざexpo build: androidした時にFailed to generate Android Keystore…エラーが出てしまったので、その備忘録です。

エラー内容

✔ Choose the build type you would like: › apk
Checking if there is a build in progress...

Accessing credentials for mrgishi in project react-native-news-app
✔ Would you like to upload a Keystore or have us generate one for you?
If you don't know what this means, let us generate it! :) › Generate new keystore
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.


Failed to generate Android Keystore, it will be generated on Expo servers during the build
keytool exited with non-zero code: 1
Error: keytool exited with non-zero code: 1
    at ChildProcess.completionListener (/usr/local/lib/node_modules/expo-cli/node_modules/@expo/spawn-async/src/spawnAsync.ts:65:13)
    at Object.onceWrapper (events.js:520:26)
    at ChildProcess.emit (events.js:400:28)
    at maybeClose (internal/child_process.js:1055:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
    ...
    at spawnAsync (/usr/local/lib/node_modules/expo-cli/node_modules/@expo/spawn-async/src/spawnAsync.ts:26:19)
    at createKeystore (/usr/local/lib/node_modules/expo-cli/node_modules/xdl/src/credentials/AndroidCredentials.ts:150:18)
    at Object.generateUploadKeystore (/usr/local/lib/node_modules/expo-cli/node_modules/xdl/src/credentials/AndroidCredentials.ts:199:9)
    at UpdateKeystore.provideOrGenerate (/usr/local/lib/node_modules/expo-cli/src/credentials/views/AndroidKeystore.ts:68:53)
    at UpdateKeystore.open (/usr/local/lib/node_modules/expo-cli/src/credentials/views/AndroidKeystore.ts:39:22)
    at CredentialsManager.run (/usr/local/lib/node_modules/expo-cli/src/credentials/route.ts:42:12)
    at runCredentialsManager (/usr/local/lib/node_modules/expo-cli/src/credentials/route.ts:13:10)
    at AndroidBuilder.collectAndValidateCredentials (/usr/local/lib/node_modules/expo-cli/src/commands/build/AndroidBuilder.ts:88:7)
    at AndroidBuilder.run (/usr/local/lib/node_modules/expo-cli/src/commands/build/AndroidBuilder.ts:33:5)
    at AndroidBuilder.command (/usr/local/lib/node_modules/expo-cli/src/commands/build/BaseBuilder.ts:43:7)

原因

MacにJavaがインストールされていないことによるエラーだそうです。

解決方法

MacにJavaをインストールしましょう。これでエラーが解消されるはずです。

Java公式:https://www.oracle.com/java/technologies/downloads/

まとめ

無事apkファイルをビルドすることができました。少し時間はかかりますが、簡単にapkファイルを作成できて楽しいですね。

ExpoはiOSアプリも同様にビルドすることができます。ただ、iOSの方はデベロッパーアカウントを購入したのですが、アカウントがpending状態でビルドを試せていません(泣)

参考

Android expo build Failed to generate Android Keystore

ー この記事をシェアする? ー

  • expo build:android時のFailed to generate Android Keystore, it will be generated on Expo servers during the buildの解消法

この記事にコメントする

このサイトはreCAPTCHAとGoogleによって保護されています。プライバシーポリシー利用規約が適用されます。