$npx react原生运行androidinfo运行jetifier将库迁移到AndroidX。您可以使用"--nojetifier"标志禁用它。Jetifier找到864个文件来转发jetify。使用4名工人。。。info正在启动JS服务器。。。信息正在启动仿真程序。。。error无法启动模拟器。原因:无法在30秒内启动仿真程序。警告请手动启动模拟器或连接设备。否则,应用程序可能无法启动。info正在安装应用程序。。。
失败:生成失败,出现异常。
-
出了什么问题:无法初始化类org.codehaus.groovy.runtime.InvokerHelper
-
尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。使用--scan运行以获得完整的见解。
-
获取更多帮助,请访问https://help.gradle.org
BUILD FAILED in 1m23s
error安装应用程序失败。确保您已经设置了Android开发环境:https://facebook.github.io/react-native/docs/getting-started.html#android-开发环境。有关详细信息,请使用--verbose标志运行CLI。错误:命令失败:gradlew.bat app:installDebug-PrecactNativeDevServerPort=8081
失败:生成失败,出现异常。
-
出了什么问题:无法初始化类org.codehaus.groovy.runtime.InvokerHelper
-
尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。使用--scan运行以获得完整的见解。
-
获取更多帮助,请访问https://help.gradle.org
BUILD FAILED in 1m23s
at checkExecSyncError (child_process.js:629:11)
at execFileSync (child_process.js:647:13)
at runOnAllDevices (E:workreact-nativeAwesomeProject1node_modules@react-native-communitycli-platform-androidbuildcommandsrunAndroidrunOnAllDevices.js:94:39)
我想我也遇到了同样的问题。在安装RN(2020年5月20日)后,我遇到了这个错误。我在上找到了此解决方案https://github.com/gradle/gradle/issues/10248.
简而言之:
-
转到RN项目中的
/android/gradle/wrapper/gradle-wrapper.properties
文件 -
查找以
distributionUrl
开头的这一行。将渐变版本更改为gradle-6.3-all.zip
。
在我的项目中,它是:
distributionUrl=https://services.gradle.org/distributions/gradle-6.0.1-all.zip
我把它改成:
distributionUrl=https://services.gradle.org/distributions/gradle-6.3-all.zip
就是这样。
我在Mac OS和React Native v0.62上遇到了同样的错误。
正确应用这些说明:React原生环境设置
添加这个变量解决了我的问题:
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"
在React Native
版本0.62.x中,即使是初始化的应用程序也没有准备好进行开发构建。
我将Gradle版本更改为最新版本,我可以有一个干净的构建,所以更改此文件:
// this file => /android/gradle/wrapper/gradle-wrapper.properties
来自:
distributionUrl=https://services.gradle.org/distributions/gradle-6.0.1-all.zip
至:
distributionUrl=https://services.gradle.org/distributions/gradle-6.5-all.zip
注意:我这个时代的Gradle的最新版本是6.5。当你阅读这个答案时,请查看此链接以查看Gradle的最近版本号
更新Aud 112023
8.2.1
我通过以下步骤解决了这个问题:
- 安装android studio 3.5(或更高版本)
- 安装java 1.8
- 如果你有javaJDE14.x.x,你必须从库/java/JavaVirtualMachines/jdk-14.x.x.jdk中删除它的文件夹(在macos上)
- 安装旧版本的JDE(我安装了11.0.6)
- npm运行android
只需按照这两个步骤喝咖啡。
-
导航到"android">渐变>包装器>渐变渐变特性
-
将"distributionUrl"从旧更改为>
distributionUrl=https://services.gradle.org/distributions/gradle-6.3-all.zip
当您使用的gradle
版本在您的环境中不兼容时,就会发生此错误,因此您只需要将渐变版本更新为最新的渐变版本,只需转到:/android/gradle/wrapper/gradle-wrapper.properties
到您的项目文件即可。
2021年8月
我在使用JDK 16.0.1
时遇到了这个问题。因此,对于JDK 16.0.1
,您需要gradle
的7.0
版本。
我通过转到/android/gradle/wrapper/gradle-wrapper.properties
并更改来修复它
distributionUrl=https://services.gradle.org/distributions/gradle-6.2-all.zip
至
distributionUrl=https://services.gradle.org/distributions/gradle-7.0-all.zip
如果你是macOS用户,那么你应该安装
brew cask install adoptopenjdk/openjdk/adoptopenjdk8
brew cask install android-platform-tools
更新.bash_profile
nano ~/.bash_profile
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
这将解决您的问题。如果您正在处理遗留代码库,那么更改分发URL将导致其他问题。这种情况通常是因为java版本不匹配。
这可能是因为您使用Gradle作为构建系统和JDK14而Gradle版本是旧的。参考:
如果您使用渐变包装,请参阅
$PROJECT_ROOT/gradle/wapper/gradle-wrapper.properties
属性distributionUrl应为:
distributionUrl=https://services.gradle.org/distributions/gradle-6.3-bin.zip
如果是旧版本,请更改它,运行./gradlew clean build
然后再试一次。
这是因为Java JDK不支持您的Gradle版本。如果您使用JDK版本15.0.2,则需要Gradle版本更改6.6.1或6.7
在Android Studio中更改渐变版本
android[project_name]/gradle/wapper/gradle-wrapper.properties
打开此文件并设置此
distributionUrl=https://services.gradle.org/distributions/gradle-6.6.1-all.zip
那么这个问题就会得到解决。
检查java JDK版本
打开cmd。运行echo%JAVA_HOME%
然后你也可以在谷歌上搜索,查看JDK支持的Gradle版本。
在mac OS 中更新JAVA_HOME对我有效
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"
此问题是由不正确的渐变版本引起的。所以要解决这个问题,请遵循以下步骤
- 请确保您安装了Android studio,并从Android studio菜单工具中设置了SDK->SDK Manager您可以设置SDK,如果您使用的是最新版本的React Native,则可以安装最新的SDK
- 从Android Studio菜单"工具">AVD管理器设置一个设备并下载图像。并对其进行测试以查看模拟器是否正常运行
- 确保JDK已安装为最新的react本机安装最新的JDK:https://www.oracle.com/java/technologies/javase-downloads.html
- 从Android Studio菜单"下一步"文件">新建>新项目创建一个虚拟项目,也就是Hello world,并构建确保所有安卓工作室问题都得到解决,并且您的安卓工作室Hello world应用程序正在模拟器上运行
- 现在是时候修复您的react原生应用程序了。停止你的安卓工作室helloworld应用程序并保持模拟器运行
- 在您的系统上找到您的Android studio hello world应用程序,转到gradle\wrapper文件夹并复制gradle wrapper.properties文件
在windows情况下,我的helloworld应用程序位于我的文档中的示例:C:\Users\Superman\Documents\android\hello-world\gradle\wrapper
- 接下来转到您的react原生应用程序文件夹,如:myReactApp\android\gradle\wrapper并粘贴您从android studio hello world应用程序复制的gradle wrapper.properties文件
- 最后在您的终端执行:npx react native run android
我对新项目和窗口也有同样的问题。我尝试了所有这些方法,但没有。可笑的是,我把java/jdk文件夹从C:\Program Files移到D:\中的另一个目录,它的工作方式就像一个魅力。也许它有用。
2021年12月
如果您使用的是最新版本的Java开发工具包,则需要更改项目的Gradle版本,以便它能够识别JDK。您可以通过转到{project root文件夹}\android\gradle\wrapper\gradle-wrapper.properties并更改distributionUrl值来升级gradle版本。你可以在这里查看Gradle的最新版本。
如果你正在寻找Java/Kotlin Core Android project
而不是React Project
的解决方案,因为我在我的核心android项目中也遇到了这个问题,那么就来吧。。。上面的解决方案对我都不起作用。所以基本上我的想法是改变gradle的版本。你问怎么做?遵循以下步骤:
File
>Project Structure
- 选择
SDK Location
- 你会发现一些写为";JDK被移到Gradle Settings;。单击
Gradle Settings
- 使用Gradle版本
11.0
- 再次同步项目
好了!一个成功构建的项目!:)