buildscript { repositories { jcenter() } } plugins { id 'java-library' id 'idea' id 'com.github.johnrengelman.shadow' version '6.1.0' id 'maven-publish' } group 'com.github.kimbeejay' version '1.0.1' sourceCompatibility = '1.8' targetCompatibility = '1.8' repositories { mavenCentral() jcenter() } apply plugin: "com.github.johnrengelman.shadow" dependencies { compileOnly group: 'org.jetbrains', name: 'annotations', version: '20.1.0' compileOnly group: 'com.typesafe', name: 'config', version: '1.4.1' compileOnly group: 'com.jason-goodwin', name: 'better-monads', version: '0.4.1' compileOnly 'org.slf4j:slf4j-simple:1.7.30' compileOnly 'org.apache.kafka:kafka-streams:2.5.0' compileOnly 'org.apache.avro:avro:1.10.1' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' } jar { manifest { attributes( "Class-Path": configurations.compileClasspath.collect { it.getName() }.join(" "), "Git-CommitId": "git rev-parse HEAD".execute().text.trim(), "Build-Time": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") ) } } shadowJar { archiveBaseName.set(rootProject.name) archiveClassifier.set("") manifest { inheritFrom project.tasks.jar.manifest } } publishing { repositories { maven { name = "GitHubPackages" url = uri("https://maven.pkg.github.com/kimbeejay/kstreams") credentials { username = project.findProperty("gpr.user") ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") ?: System.getenv("TOKEN") } } } publications { gpr(MavenPublication) { from(components.java) } } } test { useJUnitPlatform() }