/*
 * This file was generated by the Gradle 'init' task.
 *
 * This generated file contains a sample Java library project to get you started.
 * For more details on building Java & JVM projects, please refer to https://docs.gradle.org/8.4/userguide/building_java_projects.html in the Gradle documentation.
 */

plugins {
    // Apply the java-library plugin for API and implementation separation.
    id 'java-library'
    id 'com.github.johnrengelman.shadow' version '7.1.2'
}

repositories {
    // Use Maven Central for resolving dependencies.
    mavenCentral()
}

dependencies {
    // Use JUnit test framework.
    testImplementation 'junit:junit:4.13.2'

    compileOnly 'org.apache.hadoop:hadoop-client:3.3.2'
    compileOnly 'org.apache.hive:hive-exec:3.0.0'

    implementation 'com.fasterxml.jackson.core:jackson-databind:2.15.2'
    implementation 'com.fasterxml.jackson.core:jackson-core:2.15.2'
    implementation 'com.fasterxml.jackson.core:jackson-annotations:2.15.2'
    implementation 'com.google.auth:google-auth-library-oauth2-http:1.19.0'
    implementation 'com.auth0:java-jwt:4.4.0'
    implementation 'org.apache.httpcomponents:httpclient:4.5.10'
}

// Apply a specific Java toolchain to ease working on different environments.
java {
    sourceCompatibility = "1.8"
    targetCompatibility = "1.8"
}

shadowJar {
    archivesBaseName = 'featurebyte-hive-embedding-udf'
    zip64 = true
}
