🎃
KMP JAVA_HOME is set to an invalid directoryと言われてビルドできない話
バージョン
Fleet version: build 1.38.89
OS: Mac OS X (14.5, aarch64)
現象
タイトルままではあるのですが、
KMPをAndroidStudioでNewProjectしたのですが
iOS層からshared層にジャンプしようとしてもAndroidStudioが対応しておらず
ジャンプすることができなかったので仕方なくFleetを入れることにしました。
しかし、
実際にビルドしようとするとJAVA_HOME is set to an invalid directoryと言われて
全くビルドできない事態に........
対応
要はpathが認識できてないということなので
この時点でのJAVA_HOME設定はAndroidエンジニアならデフォルト的な設定だと思うのですが
/Applications/Android Studio.app/Contents/jbr/Contents/Home
になっていました。
これで読めないということだったので恐らく
- Android Studio.app経由だと取得できない
- 『Android Studio』となっていてスペースが混じっているのがよくない
という当てはついたので仕方なくhomebrewでopenjdkを入れて参照することに。
しかし、
openjdk経由でpath参照するとバージョン直指定になってしまうので気持ち悪く、
何とかできないかなーと調べてみたらjenvなるもので
バージョン管理+pathのマスター指定ができるそうな。
早速記事を参考にjenvを導入してJAVA_HOMEを
"$HOME/.jenv/shims/java"
に設定してkdocotorすると
✓ Your operation system is ready for Kotlin Multiplatform Mobile Development!
これは勝ったな.......!
と思ったのですがFleet経由だと
- preflightでgradle not faund
- gradlewコマンドを打つとJAVA_HOME is set to an invalid directory
といった事態に........
試しにターミナルからgradlewコマンドを打つと普通に動く始末......😅😅😅😅😅😅😅😅😅
結果
はい。
泣きながらJAVA_HOMEを
"$HOME/Library/Java/JavaVirtualMachines/jbr-17.0.11/Contents/Home"
して無事に起動することができました(当たり前)
Fleet...マジで許せねぇ..........
Discussion
🔥