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 主页并将 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 在哪里/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
保存文件并关闭所有终端并再次打开它们。如果在编辑 .zshrc 文件时出现错误 ".zshrc"E212: Can't open file for writing
然后使用 sudo vim.zshrc 你就可以编辑了。
错误应该得到解决。
编辑
而不是
~/.zshrc
, 你可以有 ~/.bash_profile
或 ~/.bash_rc
所以相应地编辑你的
关于android - 找不到 tools.jar。请检查/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home 是否包含有效的 JDK 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64968851/