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",*
请帮我找到解决方案?
问题是,随着更新,内置 java 优先,它没有 SDK,因为它只是运行时。
您只需要更改您的 java home 并将 java 二进制文件添加到您的 .zshrc 即可找到您的 java home 执行:
/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!然后按回车键)
vim .zshrc
添加以下内容:
export JAVA_HOME=the/path/you/copied/before export PATH=$JAVA_HOME/bin:$PATH
在我的情况下 /path/you/copyed/before 在哪里
保存文件并关闭所有终端并再次打开它们。
如果在编辑 .zshrc 文件时出现错误 “.zshrc” E212: Can’t open file for writing 然后使用 sudo vim.zshrc 并且您将能够进行编辑。
错误应该得到解决。
而不是~/.zshrc,您可以相应地~/.bash_profile编辑~/.bash_rc您的
~/.zshrc
~/.bash_profile
~/.bash_rc