After installing Square's Reader SDK into my app, I'm running into duplicate class errors between some Gradle dependencies as shown below.
- My app module dependencies:
dependencies {
def readerSdkVersion = "1.3.5"
implementation "com.squareup.sdk.reader:reader-sdk-$SQUARE_READER_SDK_APPLICATION_ID:$readerSdkVersion"
runtimeOnly ("com.squareup.sdk.reader:reader-sdk-internals:$readerSdkVersion") {
exclude group: 'com.squareup.phrase', module: 'phrase'
}
implementation 'com.squareup.phrase:phrase:1.1.0'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.multidex:multidex:2.0.1'
}
- ... and the build failure I get even though I tried excluding the conflicting group/module from Square's Phrase dependency:
Duplicate class com.squareup.phrase.BuildConfig found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.ListPhrase found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.ListPhrase$1 found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.ListPhrase$Formatter found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.Phrase found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.Phrase$KeyToken found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.Phrase$LeftCurlyBracketToken found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.Phrase$TextToken found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Duplicate class com.squareup.phrase.Phrase$Token found in modules jetified-phrase-1.1.0.jar (com.squareup.phrase:phrase:1.1.0) and reader-sdk-internals-1.3.5.jar (com.squareup.sdk.reader:reader-sdk-internals:1.3.5)
Am I missing something here? And yes, I have all of the other Gradle configurations (i.e. multidex and compile options set) as mentioned in the SDK's docs mentioned earlier.