FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':react-native-linear-gradient:compileDebugJavaWithJavac'.
> Could not find tools.jar. Please check that /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home contains a valid JDK installation.
Mac OS Big Surにアップグレードして実行すると、
npx react-native run-android
このエラーが発生しました (Android)。Stack Overflow の多くの解決策を試しましたが、どれも機能しませんでした。
新しいプロジェクトを作成しましたが、動作しています。また、古いプロジェクトのいくつかも完璧に動作しています。
*react-native Version: "0.63.3",*
解決策を見つけるのを手伝ってください。
ベストアンサー1
問題は、アップデートにより組み込み Java が優先され、ランタイムのみであるため SDK が存在しないことです。
Java ホームを変更し、Java バイナリを .zshrc に追加して、Java ホームを見つけて実行するだけです。
/usr/libexec/java_home -V | grep jdk
出力は次のようになります。
Matching Java Virtual Machines (1):
1.8.0_272 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
私の場合はSDKと書かれたパスからパスを取る必要があります
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
その後は、ホームにある .zshrc の末尾に次のコードを追加するだけです。
次のように編集できます (vim を使用する場合は、:wq! と入力して Enter キーを押すと終了できます)
vim .zshrc
以下を追加します。
export JAVA_HOME=the/path/you/copied/before
export PATH=$JAVA_HOME/bin:$PATH
私の場合、以前にコピーしたパスは次のようになります
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
ファイルを保存し、すべてのターミナルを閉じて再度開きます。
.zshrc ファイルを編集中にエラー「.zshrc」E212: 書き込み用にファイルを開けませんというメッセージが表示された場合、sudo vim.zshrc を使用すると編集できるようになります。
エラーは解決されるはずです。
編集
の代わりにまたはを~/.zshrc
使用できます。それに応じて編集してください。~/.bash_profile
~/.bash_rc