【问题标题】:React native Could not determine java version from '10'React native 无法从 '10' 确定 java 版本
【发布时间】:2018-10-05 08:23:46
【问题描述】:

我很难用 react native 来配置我的模拟器。我已经安装了模拟器,但无法正确运行语句:react-native run-android 这是我不断收到的错误。 (p.s.疑难解答中似乎没有解决方案。我试图更改无效的gradle-properties)

C:\Users\Dell\AwesomeProject>react-native run-android
Scanning folders for symlinks in C:\Users\Dell\AwesomeProject\node_modules (31ms)
JS server already running.
Building and installing the app on the device (cd android && gradlew.bat installDebug)...

FAILURE: Build failed with an exception.
  • 出了什么问题: 无法从“10”确定 java 版本。

  • 尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。 无法在设备上安装应用程序,请阅读上面的错误以了解详细信息。 确保您有一个正在运行的 Android 模拟器或连接的设备,并且有 设置您的 Android 开发环境: https://facebook.github.io/react-native/docs/getting-started.html

【问题讨论】:

  • 看起来像 react-native 中的一个 bug,可能他们还不支持 10?

标签: reactjs react-native android-emulator java-10


【解决方案1】:

我有同样的问题。升级到带有 Java 10 的 Ubuntu Bionic 后,react-native 不支持。

我现在正在使用以下脚本:

#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/
export PATH=$JAVA_HOME/bin:$PATH
react-native run-android

我将 env 路径更改为 Java 8 并运行应用程序。

【讨论】:

    【解决方案2】:

    您可以尝试升级您的 gradle 或降级 java ...我更愿意升级您的 gradle。

    升级我们的 Gradle

    1.修改android/build.gradle:

    在存储库中添加 google()

    buildscript {
        repositories {
            jcenter()
            // add google() here
            google()
    

    将 com.android.tools.build.gradle 更新到 3.1.0

    buildscript {
        repositories {
            jcenter()
            google()
        }
        dependencies {
          // classpath 'com.android.tools.build:gradle:2.2.3'
          // update from 2.2.3 to 3.1.0 
          classpath 'com.android.tools.build:gradle:3.1.0'
    

    在依赖后的仓库中添加 google() :

    buildscript {
        repositories {
            jcenter()
            google()
        }
        dependencies {
          classpath 'com.android.tools.build:gradle:3.1.0'
        }
        allprojects {
          repositories {
            mavenLocal()
            jcenter()
            // add googgle() here
            google()
    
    1. 将 android.enableAapt2=false 添加到 android/gradle.properties

      android.enableAapt2=false //

    2. 在 android/gradle/wrapper/gradle-wrapper.properties 中更新 gradle 版本:

      // 从版本 2.14.1 distributionUrl=https://services.gradle.org/distributions/gradle-2.14.1-all.zip // 更改为 4.4 distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip

    3. Runreact-native run-android。 (这可能需要一段时间,因为它会下载更新的 gradle 版本。)

    【讨论】:

      猜你喜欢
      • 2018-04-02
      • 1970-01-01
      • 2019-01-12
      • 2021-11-21
      • 2018-04-04
      • 2021-02-28
      • 2021-12-31
      • 1970-01-01
      相关资源
      最近更新 更多