plugins { id 'java' id 'java-library' id 'maven-publish' id 'application' id 'com.github.johnrengelman.shadow' version '7.1.0' } group 'cc.sukazyo' version '0.4.0.1' project.ext.archiveBaseName = 'Coeur_Morny_Cono' project.ext.artifactId = 'morny-coeur' mainClassName = 'cc.sukazyo.cono.morny.ServerMain' repositories { mavenCentral() } dependencies { compileOnlyApi "com.github.spotbugs:spotbugs-annotations:4.5.0" implementation 'com.github.pengrad:java-telegram-bot-api:5.4.0' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.2' } task updateVersionCode { ant.replaceregexp(match:'VERSION = ["a-zA-Z0-9.\\-_+@]+;', replace:"VERSION = \"$project.version\";", flags:'g', byline:true) { fileset(dir: 'src/main/java/cc/sukazyo/cono/morny', includes: 'GradleProjectConfigures.java') } ant.replaceregexp(match:'COMPILE_TIMESTAMP = [0-9]+L;', replace:"COMPILE_TIMESTAMP = ${System.currentTimeMillis()}L;", flags:'g', byline:true) { fileset(dir: 'src/main/java/cc/sukazyo/cono/morny', includes: 'GradleProjectConfigures.java') } } compileJava.dependsOn updateVersionCode test { useJUnitPlatform() } java { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 withSourcesJar() } tasks.withType(JavaCompile) { options.encoding = "UTF-8" } tasks.withType(Javadoc) { options.encoding = 'UTF-8' options.docEncoding = 'UTF-8' options.charSet = 'UTF-8' } tasks.test { useJUnitPlatform() } shadowJar { archiveBaseName.set("${project.ext.archiveBaseName}") archiveVersion.set("${project.version}") archiveClassifier.set("fat") } publishing { repositories{ maven { name 'builds' url = "file://" + new File("./build/publishing").getAbsolutePath() } maven { name '-ws-' url publishMvnRepoUrl credentials { username publishMvnRepoUsername password publishMvnRepoPassword } } } publications { main (MavenPublication) { from components.java groupId = project.group artifactId = project.ext.artifactId version = project.version } } }