Question

Not able to solve this error, I have updated Android studio. gone throungh other this solutions but not worked for me, please help..

Build script error, unsupported Gradle DSL method found: 'release()'! Possible causes could be:
- you are using Gradle version where the method is absent - you didn't apply Gradle plugin which provides the method - or there is a mistake in a build script Gradle settings

Gradle version - 0.9

Main gradle.

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.+'
    }

}
apply plugin: 'android'

android {
    compileSdkVersion 19

    buildToolsVersion "19.0.0"

}

Project Gradle file

apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion '18.0.1'

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 17
    }

    signingConfigs {
        release {
            storeFile file('dsc.jks')
            storePassword 'dscneo'
            keyAlias 'dsc'
            keyPassword 'dscneo'
        }
    }

    buildTypes {
        debug {
            versionNameSuffix '-DEBUG'
        }
        beta {
            versionNameSuffix '-BETA'
        }
        release {
            signingConfig signingConfigs.release
        }
    }


}

dependencies {
    compile 'com.google.android.gms:play-services:3.1.36'
    compile 'com.android.support:appcompat-v7:18.0.+'
    compile 'com.android.support:support-v4:+'
    compile files('libs/libGoogleAnalyticsServices.jar')
    compile files('libs/signpost-commonshttp4-1.2.1.1.jar')
    compile files('libs/signpost-core-1.2.1.1.jar')
    compile files('libs/gson-2.1.jar')
    compile project(':facebook')
    compile project(':TabIndicatorLibrary')
    compile files('libs/YouTubeAndroidPlayerApi.jar')
    compile project(':VerticalViewPager')
    compile files('libs/universal-image-loader-1.9.1.jar')
    compile files('libs/universal-image-loader-1.9.1-sources.jar')
    compile files('libs/twitter4j-core-3.0.5.jar')
    compile files('libs/HockeySDK-3.0.1.jar')
}

Facebook SDK gradle file

apply plugin: 'android-library'

dependencies {
    compile 'com.android.support:support-v4:18.0.0'
}

android {
    compileSdkVersion 17
    buildToolsVersion "18.0.1"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

Other library project gradle file

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.+'
    }
}
apply plugin: 'android-library'

dependencies {
    compile 'com.android.support:support-v4:18.0.0'
}

android {
    compileSdkVersion 16
    buildToolsVersion '18.0.1'

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

one more library project gradle file.

apply plugin: 'android-library'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 18
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
        versionCode 1
        versionName "1.0"
    }
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:+'
}
Was it helpful?

Solution

In your last file (library) you have the release block inside the android block.

The DSL for the library projects is now the same as for the application projects

In particolar you have to put the release block inside the buildTypes.

android {
    buildTypes {           
        release {
        }
    }

Also I suggest you use buildToolsVersion '19.0.x' for all your gradle files.

You can put it in your build.gradle in root folder.

ext {
    compileSdkVersion = 19
    buildToolsVersion = "19.0.3"
}

Then in each build.gradle file you can use:

 compileSdkVersion rootProject.ext.compileSdkVersion
 buildToolsVersion rootProject.ext.buildToolsVersion
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top