【问题标题】:Build fails when trying to upgrade to latest Gradle (2.2.0)尝试升级到最新的 Gradle (2.2.0) 时构建失败
【发布时间】:2017-01-28 23:11:08
【问题描述】:

尝试使用最新的 Gradle 构建时,我的 Jenkins CI 服务器上出现以下错误。

它使用最新的 Android Studio(2.2 稳定版)在我的本地环境中构建,但我的 Jenkins 服务器因此错误而失败。

对此有什么想法吗?这个错误对我来说毫无意义......

我确实让服务器人员安装了我认为需要的 JRE8。

$ /var/lib/jenkins/jobs/android-native-dev/workspace/gradlew assembleRelease
Exception in thread "main" java.lang.RuntimeException: Could not hash input string.
    at org.gradle.wrapper.PathAssembler.getMd5Hash(PathAssembler.java:63)
    at org.gradle.wrapper.PathAssembler.rootDirName(PathAssembler.java:52)
    at org.gradle.wrapper.PathAssembler.getDistribution(PathAssembler.java:45)
    at org.gradle.wrapper.Install.createDist(Install.java:43)
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129)
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)
Caused by: java.security.NoSuchAlgorithmException: MD5 MessageDigest not available
    at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
    at java.security.Security.getImpl(Security.java:695)
    at java.security.MessageDigest.getInstance(MessageDigest.java:159)
    at org.gradle.wrapper.PathAssembler.getMd5Hash(PathAssembler.java:58)
    ... 5 more
Build step 'Invoke Gradle script' changed build result to FAILURE

我正在使用以下配置:

gradle-wrapper.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip

项目 Gradle:

dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'

模块摇篮:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"
    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 23
    }

根据docs,我的所有配置都是正确的,* 但我看到文档的“distributionUrl”仍然指向 2.10-all(认为这只是文档错误,我在这里正确)。

【问题讨论】:

    标签: android jenkins gradle android-gradle-plugin


    【解决方案1】:

    错误是由于安装了 JRE8 而不是 JDK8。考虑切换到 JDK,因为 gradle 假定安装了 JDK。

    JDK 与 JRE this image

    正如您在图片中看到的,JRE 不包含可能导致NoSuchAlgorithmException 的安全包。

    【讨论】:

      【解决方案2】:

      我认为我们安装的 JDK 已损坏或不正确。我们重新安装了 JDK,但使用了本页中描述的过程,以确保它是正确的。

      https://askubuntu.com/questions/521145/how-to-install-oracle-java-on-ubuntu-14-04

      【讨论】:

        猜你喜欢
        • 2018-01-19
        • 1970-01-01
        • 2023-03-08
        • 2019-07-30
        • 2023-04-07
        • 2021-05-26
        • 1970-01-01
        • 2018-10-10
        • 1970-01-01
        相关资源
        最近更新 更多