Android Проект `buildToolsVersion не указан` при запуске` gradle clean build` на сборочной машине - PullRequest
0 голосов
/ 17 января 2020

Я пытаюсь построить проект Android на сервере TeamCity. Однако при запуске команды clean build я столкнулся с проблемой. Я получаю следующую ошибку в журнале сборки:

  Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence.
  java.lang.IllegalStateException: buildToolsVersion is not specified.
    at com.google.common.base.Preconditions.checkState(Preconditions.java:173)
    at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:558)
    at com.android.build.gradle.BasePlugin.lambda$null$4(BasePlugin.java:526)
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:81)
    at com.android.build.gradle.BasePlugin.lambda$createTasks$5(BasePlugin.java:522)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:93)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:82)
    at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:44)
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:79)
    at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    at com.sun.proxy.$Proxy14.afterEvaluate(Unknown Source)

Я считаю, что правильно указал buildToolsVersion в файле Gradle, а также у меня установлена ​​версия инструментов сборки, которые я указал на сервере сборки. Фрагменты моих файлов Gradle приведены на всякий случай.

Project build.gradle

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

allprojects {
    repositories {
        jcenter()
    }
}

Модуль build.gradle

apply plugin: 'com.android.application'

if (rootProject.hasProperty("teamcity")) {
    version = teamcity["build.number"]
} else {
    version = '2.6.5.63'
}
def calculatedVersionCode = Integer.parseInt(version.tokenize('.')[1]) * 100000 + Integer.parseInt(version.tokenize('.')[2]) * 1000 + Integer.parseInt(version.tokenize('.')[3])

android {
    compileSdkVersion 21
    buildToolsVersion '25.0.0'
...

Надеюсь, хватит информации, заранее спасибо, это сводит меня с ума!

...