plugins {
    id 'java-library'
    id 'org.jetbrains.kotlin.jvm'
}

compileJava {
    sourceCompatibility = '1.8'
    targetCompatibility = '1.8'
}

java {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
    kotlinOptions {
        freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn"
    }
}

dependencies {
    implementation 'org.apache.commons:commons-lang3:3.5'
    implementation 'org.apache.commons:commons-collections4:4.1'

    implementation 'com.alibaba:fastjson:1.2.69'

    implementation 'com.squareup:javapoet:1.8.0'

    // ksp deps https://github.com/google/ksp/releases/tag/1.7.20-1.0.6
    implementation 'com.google.devtools.ksp:symbol-processing-api:1.6.10-1.0.4'
    // https://square.github.io/kotlinpoet/
    implementation("com.squareup:kotlinpoet:1.11.0")
    implementation("com.squareup:kotlinpoet-ksp:1.11.0")
    implementation("com.squareup:kotlinpoet-metadata:1.11.0")
}
