android 无法编译设置gradle React Native

x6yk4ghg  于 2023-04-18  发布在  Android
关注(0)|答案(8)|浏览(119)

这个应用程序在另一台机器上为我工作,现在从另一台计算机上的存储库下载文件给了我这个问题
失败:生成失败,出现异常。

  • 其中:设置文件'C:\Users\samue\Desktop\MCGPS\TeachAll\android\settings.gradle'
  • 出了什么问题:无法编译设置文件“C:\Users\samue\Desktop\MCGPS\TeachAll\android\settings. gradle”。

启动失败:语义分析过程中的一般错误:不支持的类文件主要版本57

cngwdvgl

cngwdvgl1#

这是Gradle如何自动化构建以及您机器上安装的JDK当前版本的问题,请按照以下步骤修复它,react native文档指出您需要采用openjdk 8,但是您可能在同一目录中有其他冲突的JDK版本。
博客文章:https://ashirazee.medium.com/react-native-android-failure-build-failed-with-an-exception-908934c3a32b

第一步:

打开你的终端,输入以下命令导航到/Library/Java/JavaVirtualMachines:

cd /Library/Java/JavaVirtualMachines

完成后,输入ls查看包含哪些文件并记下版本。
如果您有一个或多个JDK文件,如下所示:

adoptopenjdk-8.jdk jdk-16.jdk  jdk-8.jdk

然后用下面的命令行去head并删除它们:

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-16.jdk 
 
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-8.jdk

您需要的唯一依赖项是react native文档中提到的adoptopenjdk-8.jdk
但是,在完成以下步骤后,请删除该软件并重新安装:

sudo rm -rf /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk

在你这样做之后,你可以通过键入ls来检查文件是否仍然存在
如果文件被删除。

第二步:

然后运行以下命令,以确保所有其他链接,插件和文件也从您的库中删除:
运行以下命令:

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf ~/Library/Application\ Support/Oracle/Java

第三步:

完成以下操作后,按照react native docs中提到的那样重新安装正确的jdk:

brew install --cask adoptopenjdk/openjdk/adoptopenjdk8

https://reactnative.dev/docs/_getting-started-macos-android
这可能会说adoptopenjdk-8.jdk已经安装,但继续重新安装它:

brew reinstall adoptopenjdk8

此时,错误应该已解决,您的构建应该可以正常工作。

需要注意的是,这是一个构建错误,因为react native使用Gradle来构建自动化,多个jdk版本的冲突可能会导致构建失败。
请参考以下文档:
https://docs.gradle.org/current/userguide/userguide.html

z8dt9xmd

z8dt9xmd2#

这是由于你的系统上安装的JDK版本。
如果您使用的是最新版本的Java Development Kit,则需要更改项目的Gradle版本,以便它可以识别JDK。您可以通过转到{project root folder}\android\gradle\wrapper\gradle-wrapper.properties并更改distributionUrl值来升级Gradle版本。您可以检出latest releases of gradle并注意最新版本的gradle,然后在www.example.com中编辑gradle-wrapper.properties并更改distributionUrl

xhv8bpkk

xhv8bpkk3#

我已经解决了问题,只是在Android工作室React本地版本0.60.5打开项目

zujrkrfu

zujrkrfu4#

使用Android Studio打开android文件夹。然后所有dependencies将开始下载(如图所示)。让它们完成。完成downloadedloaded后,您可以运行该项目。

jfgube3f

jfgube3f5#

这个问题似乎是与这java版本,pls检查为正确的版本.也即使两个或更多的jdk被安装,我们可以指定在运行时哪个jdk必须被使用通过指定这gradlew.bat build -Dorg.gradle.java.home=---path-to-jdk---

np8igboo

np8igboo6#

通过降级Java和升级Gradle版本解决了这个问题。

t0ybt7op

t0ybt7op7#

我也遇到了同样的问题,我来这里寻找解决方案。我选择了JDK 11而不是16,但它不起作用,我记得我没有为~/.bashrc中的新JDK版本指出方向,现在它终于起作用了。

vybvopom

vybvopom8#

distributionUrl=https:services.gradle.org/distributions/gradle-7.4.1-bin.zip我将gradle版本从7.4.2更改为7.4.1,它可以工作

相关问题