DEV Community

Query Filter
Query Filter

Posted on

dupl7

// 1. Create a directory for our modified JAR
def strippedLibDir = file("$buildDir/stripped-libs")

// 2. Define the surgery task
task stripOldConstants(type: Copy) {
    // Find the old JAR in the Gradle cache
    def oldJarFile = configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts.find { 
        it.name.contains("EQRioINtf") 
    }?.file

    if (oldJarFile) {
        from zipTree(oldJarFile)
        into strippedLibDir
        // SURGERY: Delete the specific class causing JIT conflict
        exclude "com/citigroup/get/zcc/intf/MessageTypeConstant.class"
    }
}

// 3. Tell Gradle to compile against the stripped folder + the new JAR
dependencies {
    // We point to the folder created by the task
    implementation files(strippedLibDir) {
        builtBy stripOldConstants
    }

    // The latest JAR (Lib2) remains untouched
    implementation 'com.citigroup:OESIntf3_8:3.8_A29-SNAPSHOT'
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)