使用Gradle(落后代理)的Android Build失败

时间:2017-09-29 07:06:01

标签: android macos proxy ntlm gradlew

此问题与此Android build issue

类似

我正在Mac mini(10.12)中为Android版本设置CI。

我们有一个公司代理人,这就是我认为造成所有这些问题的原因 首先,我尝试在〜/ .bash_profile中设置代理信息。

然后我设置了cntlm并尝试构建Android项目。 ANDROID_HOME设置为/ Users / jenkins / home / android-sdk

我收到了这个错误

  if (accountManager.addAccountExplicitly(account, null, null))

接下来,我运行了./gradlew build --info并获得了以下输出

    Bundle bundle = new Bundle();
    bundle.putBoolean("MySync", true);
    ContentResolver.addPeriodicSync(account, context.getPackageName(),
            bundle, AppConstants.SYNC_INTERVAL);
    ....


    onPerformSync(...) {
      if(bundle.containsKey("MySync")) {
        //perform your sync
      }
    }

我尝试将gradle.properties放在〜/ .gradle /和/ Users / jenkins / home / android-sdk / platforms /

知道可以做些什么吗?

注意:在Windows机器和Linux机器上安装了相同项目的android Studio(在我下载谷歌存储库后) 提前谢谢。

3 个答案:

答案 0 :(得分:1)

选中 app/build.gradle 以查找项目使用的所需构建工具版本。例如:

android {
    ...
    buildToolsVersion "29.0.2"
    ...
}

现在转到 Android Studio > SDK 工具 > 选择“显示包详细信息”。

在 Android SDK Build-Tools 下找到您需要的 Build Tools 版本。选择该版本,然后单击“确定”进行安装。

答案 1 :(得分:0)

我明白了。问题出在build.gradle文件中。 显然我们需要为Windows / Linux / Mac使用多个存储库。

1)在窗户建筑时, 来自http://jcenter.bintray.com/的存储库就足够了。

但是在Mac / Linux上进行Android构建时,我们需要https://maven.google.com

因此我添加了

  maven {
             url 'https://maven.google.com'
         }

我的最终build.gradle如下所示。

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

buildscript {
    repositories {
        jcenter {
            url "http://jcenter.bintray.com/"
        }
        maven {
            url 'https://maven.google.com'
        }

    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'

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

allprojects {
    repositories {
        jcenter {
            url "http://jcenter.bintray.com/"
        }
        maven {
             url 'https://maven.google.com'
         }
    }
}

现在,Windows / Linux / Mac上正在进行构建。

答案 2 :(得分:0)

在我的情况下,我遇到了相同的错误,但这是因为Intranet中无法识别Build Tools版本。

将其更改为最新的工具版本号可解决此问题:

Check latest SDK Build tools versions