Jenkins Android Gradle构建时间下载错误

时间:2016-12-09 07:45:38

标签: android linux jenkins gradle sudo

Linux环境使用jenkins android gradle项目构建错误

* What went wrong:
A problem occurred configuring project ':app'.
> Could not download glide.jar (com.github.bumptech.glide:glide:3.7.0)
   > Could not get resource 'https://jcenter.bintray.com/com/github/bumptech/glide/glide/3.7.0/glide-3.7.0.jar'.
      > Could not GET 'https://jcenter.bintray.com/com/github/bumptech/glide/glide/3.7.0/glide-3.7.0.jar'.
         > repo.jfrog.org: unknown error

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

我尝试使用wget方式下载链接会提示错误,然后我使用sudo方式成功下载链接。那么,我怎么能让jenkins gradle也使用sudo下载,或者使用其他解决方案

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

buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.1'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        classpath 'me.tatarka:gradle-retrolambda:3.2.5'
        classpath 'me.tatarka.retrolambda.projectlombok:lombok.ast:0.2.3.a2'

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

    // Exclude the version that the android plugin depends on.
    configurations.classpath.exclude group: 'com.android.tools.external.lombok'
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

请帮帮我,谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试将本地库(在用户/ .gradle / caches中)上传到Jenkins服务器,这对我有用。

答案 1 :(得分:0)

我不认为以超级用户权限运行构建是一个很好的解决方案,因为似乎无法解决依赖关系。

只是建议如何解决它:Gradle拥有自己的依赖关系的本地缓存,并且不需要在每次构建时下载它们。因此,您可以使用Jenkins使用的相同Gradle分发,并使用su权限手动构建应用程序,以解决所有依赖关系并缓存它们。

请注意,默认情况下,动态版本的依赖项仅缓存24小时,正如the official docs中所述,但您可以将其更改为:

configurations.all {
    resolutionStrategy.cacheDynamicVersionsFor 10, 'minutes'
    resolutionStrategy.cacheChangingModulesFor 4, 'hours'
}