plugins { id 'java' id 'application' id 'maven' } group = 'com.jsyn' version = '17.0.0-SNAPSHOT' sourceCompatibility = '1.8' mainClassName = 'com.jsyn.apps.AboutJSyn' repositories { mavenCentral() mavenLocal() } dependencies { testImplementation 'org.junit.jupiter:junit-jupiter:5.4.2' implementation 'org.slf4j:slf4j-api:1.7.25' // I'm unsure weather or not to keep the logging implementation here and not as a 'testImplementation', as libraries // aren't usually meant to be ran. // implementation 'org.slf4j:slf4j-log4j12:1.7.25' implementation fileTree(dir: 'libs', include: '*.jar') } jar { manifest { attributes('Main-Class': mainClassName) } from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } } javadoc { exclude 'com/portaudio/**' exclude 'com/jsyn/devices/jportaudio/**' source = sourceSets.main.allJava options { addStringOption('Xdoclint:none', '-quiet') } } task javadocJar(type: Jar) { classifier = 'javadoc' from javadoc } artifacts { archives javadocJar } test { useJUnitPlatform() }