Ошибка при подписании apk: невозможно найти

Gradle сообщает, что не может найти метод signConfig (), который используется для подписи apk.

Также перечислены возможные причины:

1) В проекте может использоваться версия gradle, которая его не содержит.

2) В файле сборки может отсутствовать плагин Gradle.

Вот мой grade.build:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
compileSdkVersion 23
buildToolsVersion "23.0.1"

defaultConfig {
    applicationId "happy.blumental.maxim.testproject"
    minSdkVersion 14
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
    multiDexEnabled true
}

signingConfigs {
    release {
        keyAlias('releaseKey')
        storeFile file('mykeystore.jks')
        keyPassword('key')
        storePassword('store')
    }
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        signingConfigs signingConfigs.release
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
compile "com.android.support:appcompat-v7:$support_version"
compile "com.android.support:support-v4:$support_version"
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
compile "io.reactivex:rxjava:1.0.14"
compile('io.reactivex:rxkotlin:0.24.100') { exclude module: 'funktionale' }
compile "io.reactivex:rxandroid:1.0.1"
compile "com.jakewharton.rxbinding:rxbinding-kotlin:0.3.0"
compile 'org.jetbrains.kotlin:kotlin-reflect:1.0.0-beta-1038'

compile 'com.trello:rxlifecycle:0.3.0'
compile 'com.trello:rxlifecycle-components:0.3.0'

compile 'com.parse:parse-android:1.10.2'
}

Properties props = new Properties()
props.load(project.rootProject.file('local.properties').newDataInputStream())
String parseAppId = props.getProperty('parse.app_id') ?: "Specify APP_ID"
String parseClientKey = props.getProperty('parse.client_key') ?: "Specify CLIENT_KEY"

android.buildTypes.each { type ->
type.buildConfigField 'String', 'PARSE_APP_ID', "\"$parseAppId\""
type.buildConfigField 'String', 'PARSE_CLIENT_KEY', "\"$parseClientKey\""
}

Я использую плагин Gradle 1.4.0-beta6.

А вот и мой журнал ошибок:

Error:(30, 0) Gradle DSL method not found: 'signingConfigs()' Possible causes:

  • В проекте TestProject может использоваться версия Gradle, не содержащая этого метода. Открыть файл-оболочку Gradle
  • В файле сборки может отсутствовать плагин Gradle. Применить плагин Gradle

  • person Maxim Blumental    schedule 15.11.2015    source источник


    Ответы (1)


    Переименуйте свойство в вашем выпуске buildType с signingConfigs на signingConfig как:

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
    }
    

    Взгляните на ссылка на dsl, вы неправильно написали имя свойства.

    person Stanislav    schedule 15.11.2015