如何解决此错误无法获取 org.gradle.api.Project 类型的项目 ':lokdonencrypt' 的未知属性 'publishedGroupId'。”

问题描述 投票:0回答:1

我正在尝试将android库上传到Jcenter,我已经成功创建了一个帐户,创建了一个存储库、包和版本。现在我正在修改模块的 build.gradle 文件,但我不断收到此错误

原因:groovy.lang.MissingPropertyException:无法获取 org.gradle.api.Project 类型的项目“:lokdonencrypt”的未知属性“publishedGroupId”。

如何解决这个问题

build.gradle(Module:lokencrypt)
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'com.jfrog.bintray'



android {
    compileSdkVersion 29
    buildToolsVersion "30.0.2"

    defaultConfig {
        minSdkVersion 21
        targetSdkVersion 29
        versionCode 1
        versionName "0.0.1"
        publishedGroupId "com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        consumerProguardFiles "consumer-rules.pro"
    }

   /* task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
        from androidJavadocs.destinationDir
        classifier = 'javadoc'
    }

    task androidSourcesJar(type: Jar) {
        from android.sourceSets.main.java.srcDirs
        classifier = 'sources'
    }*/


    ext {
        bintrayRepo = 'maven' // Name of the Bintray repo you created
        bintrayName = ' com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt' // Bintray package name

        publishedGroupId = 'com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt' // Group ID of the SDK which will be added in implementation line of gradle
        artifact = 'lokdonencrypt' // Artifact ID of the SDK which will be added in implementation line of gradle
        libraryVersion = '0.0.1' // Version of the library you created in Bintray

        libraryName = 'lokdonencrypt' // It is generally the module name
        libraryDescription = 'LokDon mobile encryption (ECSMID ) for developers'

        siteUrl = 'https://github.com/UncleSamTech/LokdonEncryptionModule'
        gitUrl = 'https://github.com/UncleSamTech/LokdonEncryptionModule.git'

        developerId = 'cbusiness'
        developerName = 'Lokdon'
        developerEmail = '[email protected]'

        licenseName = 'The Apache Software License, Version 2.0'
        licenseUrl = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
        allLicenses = ["Apache-2.0"]

        //Bintray Credentials
        Properties properties = new Properties()
        properties.load(project.rootProject.file('local.properties').newDataInputStream())

        bintrayUsername = properties.getProperty('BINTRAY_USERNAME')
        bintrayUserOrg = properties.getProperty('BINTRAY_ORG')
        bintrayApiKey = properties.getProperty('BINTRAY_API_KEY')

       

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.2.1'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    implementation 'commons-io:commons-io:+'
    implementation 'org.apache.commons:commons-io:1.3.2'

    implementation 'commons-codec:commons-codec:1.8'
    implementation 'com.amazonaws:aws-android-sdk-s3:2.7.+'
    implementation 'com.amazonaws:aws-android-sdk-cognito:2.7.+'
}

apply from: 'bintray.script'

build.gradle(模块:应用程序)

    plugins {
    id 'com.android.application'
}

android {
    compileSdkVersion 29
    buildToolsVersion "30.0.2"

    defaultConfig {
        applicationId "com.lokdonencryption.lokdonencryptionmodule"
        minSdkVersion 21
        targetSdkVersion 29
        versionCode 1
        versionName "0.0.1"
        //publishedGroupId "com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

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

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.2.1'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
    testImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    implementation project(":lokdonencrypt")
    implementation 'commons-io:commons-io:+'
    implementation 'commons-codec:commons-codec:1.8'
    implementation 'org.apache.commons:commons-io:1.3.2'
    implementation 'com.amazonaws:aws-android-sdk-s3:2.7.+'
    implementation 'com.amazonaws:aws-android-sdk-cognito:2.7.+'
//    implementation 'com.amazonaws.util.EncodingSchemeEnum.BASE64'


}
android gradle sdk bintray jcenter
1个回答
0
投票

好吧,我来回答我的问题了。该错误是抛出的异常,它是 MissingPropertyException,这意味着我没有添加属性

解决方法是我将下面的这段代码复制到错误的 build.gradle 文件中

之前

代码位于我创建的新模块的 build.gradle 文件中,如下所示

 ext {
        bintrayRepo = 'maven' // Name of the Bintray repo you created
        bintrayName = ' com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt' // Bintray package name

        publishedGroupId = 'com.lokdonencryption.lokdonencryptionmodule:lokdonencrypt' // Group ID of the SDK which will be added in implementation line of gradle
        artifact = 'lokdonencrypt' // Artifact ID of the SDK which will be added in implementation line of gradle
        libraryVersion = '0.0.1' // Version of the library you created in Bintray

        libraryName = 'lokdonencrypt' // It is generally the module name
        libraryDescription = 'LokDon mobile encryption (ECSMID ) for developers'

        siteUrl = 'https://github.com/UncleSamTech/LokdonEncryptionModule'
        gitUrl = 'https://github.com/UncleSamTech/LokdonEncryptionModule.git'

        developerId = 'cbusiness'
        developerName = 'Lokdon'
        developerEmail = '[email protected]'

        licenseName = 'The Apache Software License, Version 2.0'
        licenseUrl = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
        allLicenses = ["Apache-2.0"]

        //Bintray Credentials
        Properties properties = new Properties()
        properties.load(project.rootProject.file('local.properties').newDataInputStream())

        bintrayUsername = properties.getProperty('BINTRAY_USERNAME')
        bintrayUserOrg = properties.getProperty('BINTRAY_ORG')
        bintrayApiKey = properties.getProperty('BINTRAY_API_KEY')

       

    }

解决它

我只是将其复制并放入项目级模块的build.gradle文件中,错误就消失了。

检查下面的快照并查看更改

© www.soinside.com 2019 - 2024. All rights reserved.