I'm getting a strange error when I try to build my Android app using gradle.
I get this error when I try to run gradle build
:
Could not find method buildToolsVersion() for arguments [23.0.2] on root project 'latest'.
However, I checked my android SDK folder to see if this version was actually missing or not. In other words, the results of issuing ls $ANDROID_HOME/build-tools/
is this:
19.1.0 20.0.0 21.1.2 22.0.1 23.0.1 23.0.2 23.0.3
As you can see, the 23.0.2
exists. What seems to be the problem?
This is my root build.gradle
file:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
mavenCentral()
}
}
ext {
compileSdkVersion 23
buildToolsVersion '23.0.2'
}
subprojects { subproject ->
afterEvaluate{
if((subproject.plugins.hasPlugin('android') || subproject.plugins.hasPlugin('android-library'))) {
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
}
}
}
}
And this is the build.gradle
file
apply plugin: 'com.android.application'
apply from: 'copyLibs.gradle'
apply plugin: 'eclipse'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.marco.myapp"
minSdkVersion 15
targetSdkVersion 23
versionCode 35
versionName "1.2.0.15"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
// avoid Travis failures
lintOptions {
abortOnError false
}
}
dependencies {
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:recyclerview-v7:22.0.0'
//compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':libraries:openpgp-api-lib')
compile 'org.eclipse.jgit:org.eclipse.jgit:3.7.0.201502260915-r'
compile 'com.jcraft:jsch:0.1.52'
compile 'org.apache.commons:commons-io:1.3.2'
compile 'com.jayway.android.robotium:robotium-solo:5.3.1'
compile 'com.melnykov:floatingactionbutton:1.2.0'
}
tasks.findAll {
it.name.startsWith 'assemble'
}.each {
it.dependsOn copyDependenciesIntoLibs
}
The reason you're seeing this is because the variables you're declaring in the root project are lacking an assignment.
ext {
compileSdkVersion 23
buildToolsVersion '23.0.2'
}
Should be:
ext {
compileSdkVersion = 23
buildToolsVersion = '23.0.2'
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With