Reputation: 61
I am trying to upload an android library to Jcenter, I have successfully created an account, created a repo, package and version. Now I am modifying the build.gradle files for the module and I keep getting this error
Caused by: groovy.lang.MissingPropertyException: Could not get unknown property 'publishedGroupId' for project ':lokdonencrypt' of type org.gradle.api.Project.
How do I resolve this
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(Module:app)
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'
}
Upvotes: 2
Views: 9780
Reputation: 61
Okay, so I am answering my question. The error is an exception thrown which is a MissingPropertyException which means I didn't add a property
The fix was that I copied this block of code below in the wrong build.gradle file
Before
the code was in the build.gradle file of the new module I created as seen below
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')
}
To solve it
I simply copied it and put it in the build.gradle file of the project level module and the error disappeared.
Check the snapshot below and see the changes
Upvotes: 0