I'm looking for a math parser. Found: gbenroscience/parserng-android
After adding the repository and dependency I suddenly have multiple dependency duplicate conflicts (part listed at end, too many to add!).
Setting grade file:
pluginManagement {
repositories {
google {
content {
includeGroupByRegex("com\\.android.*")
includeGroupByRegex("com\\.google.*")
includeGroupByRegex("androidx.*")
}
}
mavenCentral()
gradlePluginPortal()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven {
url = uri("https://jitpack.io")
}
}
}
Build grade file:
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.google.gms.google.services)
}
android {
namespace = "com.doctors_handbook.foundationdoctorshandbook"
compileSdk = 35
defaultConfig {
applicationId = "com.doctors_handbook.foundationdoctorshandbook"
minSdk = 24
targetSdk = 35
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
buildFeatures {
viewBinding = true
}
}
dependencies {
implementation ("com.github.gbenroscience:parserng-android:0.1.1")
implementation(libs.appcompat)
implementation(libs.material)
implementation(libs.activity)
implementation(libs.constraintlayout)
implementation(libs.navigation.fragment)
implementation(libs.navigation.ui)
implementation(libs.firebase.firestore)
implementation(libs.firebase.database)
implementation(libs.ads.mobile.sdk)
testImplementation(libs.junit)
androidTestImplementation(libs.ext.junit)
androidTestImplementation(libs.espresso.core)
implementation("com.github.mhiew:android-pdf-viewer:3.2.0-beta.3")
implementation ("androidx.recyclerview:recyclerview:1.1.0")
implementation ("androidx.room:room-runtime:2.6.1")
annotationProcessor ("androidx.room:room-compiler:2.6.1")
}
After looking at various similar questions posed, can not make head nor tail and I have no idea how to remedy this, the documentation link provides no clear answers that I understand
I would greatly appreciate if anyone could walk me through this.
Duplicate class com.google.gson.ExclusionStrategy found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldAttributes found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$2 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$3 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$4 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$5 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingPolicy$6 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.FieldNamingStrategy found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$2 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$3 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$4 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$5 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.Gson$FutureTypeAdapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.GsonBuilder found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.InstanceCreator found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonArray found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonDeserializationContext found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonDeserializer found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonElement found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonIOException found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonNull found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonObject found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonParseException found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonParser found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonPrimitive found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonSerializationContext found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonSerializer found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonStreamParser found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.JsonSyntaxException found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.LongSerializationPolicy found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.LongSerializationPolicy$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.LongSerializationPolicy$2 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.TypeAdapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.TypeAdapter$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.TypeAdapterFactory found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.annotations.Expose found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.annotations.JsonAdapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.annotations.SerializedName found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.annotations.Since found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.annotations.Until found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.$Gson$Preconditions found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.$Gson$Types found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.$Gson$Types$GenericArrayTypeImpl found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.$Gson$Types$ParameterizedTypeImpl found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.$Gson$Types$WildcardTypeImpl found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$10 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$11 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$12 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$13 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$14 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$2 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$3 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$4 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$5 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$6 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$7 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$8 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ConstructorConstructor$9 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Excluder found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Excluder$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.GsonBuildConfig found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.JavaVersion found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.JsonReaderInternalAccess found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LazilyParsedNumber found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$EntrySet found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$EntrySet$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$KeySet found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$KeySet$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$LinkedTreeMapIterator found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.LinkedTreeMap$Node found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.ObjectConstructor found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.PreJava9DateFormatProvider found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Primitives found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Streams found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Streams$AppendableWriter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.Streams$AppendableWriter$CurrentWrite found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.UnsafeAllocator found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.UnsafeAllocator$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.UnsafeAllocator$2 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.UnsafeAllocator$3 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.UnsafeAllocator$4 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.ArrayTypeAdapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.ArrayTypeAdapter$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.CollectionTypeAdapterFactory found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.DateTypeAdapter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.DateTypeAdapter$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.JsonTreeReader found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.JsonTreeReader$1 found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Duplicate class com.google.gson.internal.bind.JsonTreeWriter found in modules gson-2.10.1.jar -> gson-2.10.1 (com.google.code.gson:gson:2.10.1) and parserng-android-0.1.1.aar -> parserng-android-0.1.1-runtime (com.github.gbenroscience:parserng-android:0.1.1)
Dependencies in Gralde is handled by in org.gradle.api.artifacts.dsl.DependencyHandler.
Gradle is implemented in Groovy. Groovy is dynamically typed language. But Groovy-DSL can handle ambiguities between different parameters because of single layer.
In Kotlin-DSL, Groovy layer is wrapped by Kotlin. Kotlin is also a dynamic language & can handle parameters dynamically. But it adds another dynamic layer which adds another layer of ambiguity to the Gradle compiler.
This is the source code of Kotlin-DSL
public fun DependencyHandler.implementation(dependencyNotation: kotlin.Any): Dependency? { /* code */ }
public fun DependencyHandler.implementation(
dependencyNotation: String?,
dependencyConfiguration: Action<ExternalModuleDependency>
): ExternalModuleDependency { /* code */ }
Kotlin-DSL supposed to call first function but it calls second function. And just adding a seconds pair of parenthesis solve our problem.
So here's the solution.
implementation (("com.github.gbenroscience:parserng-android:0.1.1"))
Now it also resolves import com.itis.libs.parserng.android.expressParser.MathExpression;
Another obvious solution is to add library to catalog.