无法解析com.android.tools.build:gradle:3.1.4,react-native run-android

时间:2018-09-24 11:57:51

标签: java android react-native

我正在尝试做我的第一个react-native run-android,但是出现以下错误:

失败:构建失败,并出现异常。

我的build.gradle文件是这样的:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
    }
    repositories {
        // mavenCentral()

        google()
        // maven {
        //     url "https://maven.google.com"
        // }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.4'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenLocal()
        google()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
    }
}


task wrapper(type: Wrapper) {
    gradleVersion = '4.4'
    distributionUrl = distributionUrl.replace("bin", "all")
}

从注释行中可以看到,我已经尝试根据先前的答案here

进行多种组合

每个错误消息的共同点是

  

java.lang.RuntimeException:意外错误:   java.security.InvalidAlgorithmParameterException:trustAnchors   参数必须为非空

我还尝试了cd android / && gradlew clean,也尝试将gradle版本更改为classpath。所有结果都相同。

有什么建议吗?

5 个答案:

答案 0 :(得分:3)

自己闯进去。

android入门文档不太正确。

选择安装Android 8.1和27.0.3,而不是安装Android 8.0和SDK平台26.0.3

请注意,这是针对React-Native 0.57.3

答案 1 :(得分:0)

好吧,我碰到了这个错误,我能够解决它,不知道这是否是正确的方法,因为它解决了我的问题。

您的app / build.gradle应该看起来像这样!

android {
    compileSdkVersion 27
    buildToolsVersion '27.0.3'

    defaultConfig {
        ...
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }
}


dependencies {
   ...
    compile "com.android.support:appcompat-v7:27.1.0"
   .....
}

答案 2 :(得分:0)

实际上,我可以通过卸载并重新安装所有内容(java jdk,react-native-cli,android-studio,watchman)来解决我的问题。

这可能是一个Java问题,因为在我的第一个react-native设置中,我错误地安装了 java-jdk-11 ,该与android sdk不兼容 react-native取决于,并且需要 java-jdk-8 (例如,提到的here)。但是当我降级到jdk-8并安装了所有其他东西时,由于某些与证书相关的问题,我无法按照建议的elsewhere进行修复。

因此,我卸载了所有内容后重新开始,从java-jdk-8开始,然后是react-native-cli和其他所有内容,如react-native official "Getting started" guide中所述。然后它开始工作,根本不更改build.gradle文件。

可悲的是,官方指南说: “如果需要,请下载并安装Oracle JDK 8 或更高版本。也可以使用OpenJDK 8 或更高版本作为替代方案”,事实并非如此。

答案 3 :(得分:-1)

我通过以下方法解决此错误:

Project.gradle:

buildscript {

repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

app.gradle:

android {

compileSdkVersion 26
defaultConfig {
  ...
    minSdkVersion 19
    targetSdkVersion 26
  ...
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

}

依赖性{

implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

}

gradle-wrapper.properties

distributionUrl = https://services.gradle.org/distributions/gradle-4.4-all.zip

我认为3.2.1和gradle-4.6-all.zip ara的gradle工具尚未匹配。

答案 4 :(得分:-1)

我已经取得了这样的成就:

  1. 在Android Studio中打开一个新产品。
  2. 完全升级gradle和
  3. 然后尝试 react-native run-android 。 为我工作。