flutter doctor Android licenses status unknown

問題:Java関連のエラー

flutter_console.batでflutter doctorを行った際、以下のように「Android licenses status unknown」、「flutter doctor –android-licensesを実行してください」となりました。

flutter doctor実行

指示通りにflutter doctor –android-licensesを実行します。

flutter doctor Android licenses status unknown

Exception in thread “main” java.lang.NoClassDefFoundError
というJava関連のエラーが出ました。。。
私が使用しているJDKはAmazon Corretto11で、そのあたりがまずいのかなと思い、調査してみました。
以下は調査結果です。

原因

JDKが9以上だとエラーになります。

解決方法

JDKをなんとかしないといけませんが、JDKはOracle JDKの有償化でややこしく、できればOpen JDKでなんとかしたいと考えました。
そこでAndroid Studio付属のJDKを使いました。

解決手順

まず、Android StudioのJDKの場所は以下の手順で確認します。
確認方法は以下です。
1. Android Studioでプロジェクトを開きます。
2. ツールバーの[File] > [Project Structure]を選択します。
以下のJDK LocationがJDKのパスです。

Android StudioのJDKの場所

flutter_console.batで次のコマンドを実施します。
set JAVA_HOME=”調べたJDKのパス”
flutter doctor –android-licenses

ライセンスに同意するか聞かれるのでyを押します。
全てのライセンスに合意したら、再度flutter doctorコマンドを実行してみます。

下記のように成功しました!

flutter doctor成功

最後に & 関連書籍

以上になります。

分かりにくいところや、「もっとこうしてほしい」などのご意見がありましたら、ツイッターから連絡いただけると幸いです。
質問に関しても、お気軽にお問い合わせください。

スマホアプリの開発はFlutterだけでなくXamarin.Formsでも可能です。
Xamarin.Formsのでも開発していますので、興味があれば見てみてください。

以下は関連書籍です。

参考

https://github.com/flutter/flutter/issues/39549
https://qiita.com/ironsand/items/1aa74d1211624a0a8894

コメント

タイトルとURLをコピーしました