'Failed to apply plugin [id 'com.android.internal.library']

I am trying to reanimate an old application

A problem occurred evaluating project ''.

Failed to apply plugin [id 'com.android.internal.library'] Cannot add a configuration with name 'lintClassPath' as a configuration with that name already exists.

gradle-wrapper.properties string - "distributionUrl=https://services.gradle.org/distributions/gradle-6.5-bin.zip"

build.gradle from my project

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.2'
        classpath 'io.realm:realm-gradle-plugin:4.1.1'
        //classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        classpath 'com.google.gms:google-services:4.3.5'
        classpath 'com.android.support:support-v4:28.0.0'
        classpath 'com.android.support:support-v13:28.0.0'
    }
}

apply plugin: 'com.android.application'
apply plugin: 'com.android.library'
//apply plugin: 'android-apt'

/*apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        resourcePackageName "ru.kirov.ss"
    }
}*/

repositories {
    mavenCentral()
    jcenter()
    google()
}

dependencies {
    implementation project(':libs:LicensingLibrary')
    implementation project(':libs:CircleDiagramView')
    implementation project(':libs:StickyListHeaders')
    implementation project(':libs:ExpansionDownloader')
    implementation project(':libs:ZipFile')
    implementation fileTree(dir: 'libs', include: '*.jar')
    implementation 'org.lucasr.twowayview:twowayview:0.1.4'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support:support-v13:28.0.0'
    implementation 'com.google.android.gms:play-services-analytics:17.0.0'
    implementation 'com.google.android.gms:play-services-plus:17.0.0'
    implementation 'com.j256.ormlite:ormlite-core:4.45'
    implementation 'com.j256.ormlite:ormlite-android:4.45'
    //apt 'org.androidannotations:androidannotations:4.0.0'
    implementation 'org.androidannotations:androidannotations-api:4.0.0'
    implementation 'com.tonicartos:stickygridheaders:1.0.1'
    implementation 'me.grantland:autofittextview:0.2.1'
    implementation 'com.squareup.retrofit2:retrofit:2.1.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
    implementation 'com.cleveroad:slidingtutorial:0.9.5'
    implementation 'me.dm7.barcodescanner:zxing:1.9'
    implementation 'com.getkeepsafe.taptargetview:taptargetview:1.5.1'
    implementation 'com.android.support:design:28'
}

apply plugin: 'com.google.gms.google-services'

def getGitCommitSHA() {
    try {
        'git rev-parse --short HEAD'.execute().text.trim()
    } catch (e) {
        "nogitsha"
    }
}


android {
    compileSdkVersion 28
    buildToolsVersion "23.0.3"

    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 28

        versionName '0.9.1'
        versionCode 59
        // warning!
        // real version code in apks will be 'N*2' for large and 'N*2+1' for xlarge
        // where 'N' - version code provided here
    }

    signingConfigs {
        myConfig {
            storeFile file('sskirov-release-key.keystore')
            storePassword '2013Sol2s03K0i4rOv'
            keyAlias 'sskirov'
            keyPassword '2013Sol2s03K0i4rOv'
        }
        proConfig {
            storeFile file('sskirov-release-key-pro.jks')
            storePassword '2013Sol2s03K0i4rOv'
            keyAlias 'sskirov'
            keyPassword '2013Sol2s03K0i4rOv'
        }
        commConfig {
            storeFile file('sskirov-release-key-comm.jks')
            storePassword '2013Sol2s03K0i4rOv'
            keyAlias 'sskirov'
            keyPassword '2013Sol2s03K0i4rOv'
        }
    }

    flavorDimensions "screenSize", "content", "lang"

    productFlavors {
        def flavorFree = signingConfigs.myConfig
        def flavorPro = signingConfigs.proConfig
        def flavorComm = signingConfigs.commConfig

        large {
            dimension "screenSize"
            versionName android.defaultConfig.versionName + ".L"
            versionCode android.defaultConfig.versionCode * 2
        }
        xlarge {
            dimension "screenSize"
            versionName android.defaultConfig.versionName + ".XL"
            versionCode android.defaultConfig.versionCode * 2 + 1
        }
        ru {
            dimension "lang"
        }
        en {
            dimension "lang"
        }
        de {
            dimension "lang"
        }
        free {
            applicationId "ru.kirov.ss"
//            applicationId "ru.kirov.ss.en"
            //applicationId "ru.kirov.ss.de"
            dimension "content"
            signingConfig flavorFree
            buildConfigField("boolean", "IS_FULL", "false")
        }
        pro {
            applicationId "ru.kirov.ss.pro"
//            applicationId "ru.kirov.ss.pro.en"
//            applicationId "ru.kirov.ss.pro.de"
            dimension "content"
            signingConfig flavorPro
            buildConfigField("boolean", "IS_FULL", "true")
        }
        comm {
            applicationId "ru.kirov.ss.comm"
            dimension "content"
            signingConfig flavorComm
            buildConfigField("boolean", "IS_FULL", "true")
        }
    }

    sourceSets {
        free {
            java.srcDirs = ['src/main/java', 'src/free/java']
        }
        pro {
            java.srcDirs = ['src/main/java', 'src/pro/java']
        }
        comm {
            java.srcDirs = ['src/main/java', 'src/comm/java']
        }
        ru {
            java.srcDirs = ['src/main/java', 'src/ru/java']
        }
        en {
            java.srcDirs = ['src/main/java', 'src/en/java']
        }
        de {
            java.srcDirs = ['src/main/java', 'src/de/java']
        }
    }

    buildTypes {
        debug {
            debuggable true
            versionNameSuffix "-${getGitCommitSHA()}"
            //useProguard false
        }
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            productFlavors.free.signingConfig signingConfigs.myConfig
            productFlavors.pro.signingConfig signingConfigs.proConfig
            productFlavors.comm.signingConfig signingConfigs.commConfig
        }
    }

    packagingOptions {
        exclude 'META-INF/LICENSE.TXT'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/license'
        exclude 'META-INF/NOTICE.TXT'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/notice'
    }
}


Solution 1:[1]

Instead of this part

apply plugin: 'com.android.application'
apply plugin: 'com.android.library'

write like below

plugins {
    id 'com.android.application'
    id 'com.android.library'
}

Solution 2:[2]

Applying both com.android.application and com.android.library in the same build script module is most likely what's causing the problem. It doesn't make sense to declare a module to be both an application and a library.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Dariusz Wiechecki
Solution 2 Tom Rutchik