/*
 * This file was generated by the Gradle 'init' task.
 *
 * This generated file contains a sample Java application project to get you started.
 * For more details take a look at the 'Building Java & JVM projects' chapter in the Gradle
 * User Manual available at https://docs.gradle.org/6.8.3/userguide/building_java_projects.html
 */

plugins {
    // Apply the application plugin to add support for building a CLI application in Java.
    id 'application'
}

repositories {
    // Use JCenter for resolving dependencies.
    jcenter()
}

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

    // This dependency is used by the application.
    implementation 'com.google.guava:guava:29.0-jre'

    implementation group: 'org.json', name: 'json', version: '20210307'

    implementation 'net.dv8tion:JDA:4.2.0_247'

    implementation 'com.sedmelluq:lavaplayer:1.3.73'

    implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'

    implementation "net.dean.jraw:JRAW:1.1.0"

    compileOnly 'org.projectlombok:lombok:1.18.16'
    annotationProcessor 'org.projectlombok:lombok:1.18.16'
}

mainClassName = 'de.yannicpunktdee.yoshibot.main.Main'

application {
    // Define the main class for the application.
    mainClass = "$mainClassName"
}

jar {
    manifest {
        attributes "Main-Class": "$mainClassName"
    }
    from {
        configurations.runtimeClasspath.findAll({ !it.path.endsWith(".pom") }).collect { it.isDirectory() ? it : zipTree(it) }
    }
}
