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).我try 了很多来自Stack Overflow的解决方案,但都没有奏效.

我已经创建了一个新的项目,它正在发挥作用.此外,一些老项目也运行得很好.

*react-native Version: "0.63.3",*

请帮我找到解决办法?

推荐答案

问题是,在更新时,内置java优先,而且它没有SDK,因为它只是运行时.

您只需要更改java home并将java二进制文件添加到您的应用程序中.zshrc

/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

在那之后,你只需将以下内容添加到你的.那应该在你家里.

您可以使用(如果您决定使用VIM,您可以退出编写:wq!并按Enter键)

vim .zshrc

添加以下内容:

export JAVA_HOME=the/path/you/copied/before
export PATH=$JAVA_HOME/bin:$PATH

在我的示例中,/path/you/copy/之前应该在哪里

/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

保存文件,关闭所有终端,然后再次打开.

如果在编辑.zshc文件时收到错误".zshc"E212:无法打开要写入的文件 然后使用sudo vim.zshc,您就可以进行编辑了.

这个错误应该得到解决.

编辑

而不是~/.zshrc,你可以有~/.bash_profile~/.bash_rc,所以相应地编辑你的

Android相关问答推荐

当我的Log.i()不在主线程中时,如何在我的logcat中显示它?

如何使用Gradle风味在两个Kotlin导入(Google vs Amazon Java billing library)之间进行 Select ?

如何在Reaction Native中显示Google Map iFrame?

无法从API访问项目详细信息

如何在Android Studio中将我的Java-库&库设置为Kotlin库

将DiffUtils用于Android上的Recrecerview适配器

在柯特林连续测量网速

未解析的引用:视图模型

为一组闪烁的可组合项制作动画,控制同步/定时

运行设备选项卡在 Android Studio 中自动打开

为什么@PrimaryKey val id: Int? = null 在创建 Room 实体时有效吗?

appcompat 依赖从何而来?

未解决的参考:pagerTabIndicatorOffset

了解 Compose 声明性逻辑

Material Design 网站的新设计已启动,但我找不到实现选项卡,该选项卡在哪里?

有人可以向我解释这两个结果有什么区别吗?

在jetpack compose中将图像添加到脚手架顶部栏

更新后 Firebase 服务无法在模拟器上运行

这是 let 函数的正确用法吗?

Jetpack Compose Material3 - switch 标签