plugins { id "java-library" id "maven-publish" id "net.raphimc.class-token-replacer" version "1.0.0" } base { java.toolchain.languageVersion = JavaLanguageVersion.of(8) compileJava.options.encoding = compileTestJava.options.encoding = javadoc.options.encoding = "UTF-8" group = project.maven_group ?: rootProject.maven_group archivesName = project.maven_name ?: rootProject.maven_name version = project.maven_version ?: rootProject.maven_version } repositories { mavenCentral() maven { name = "ViaVersion" url "https://repo.viaversion.com" } } dependencies { compileOnly "com.viaversion:viaversion-common:4.9.1" compileOnly "com.viaversion:viabackwards-common:4.9.0" compileOnly "org.yaml:snakeyaml:2.2" compileOnly "com.google.guava:guava:32.1.3-jre" compileOnly "io.netty:netty-handler:4.1.101.Final" } sourceSets { main { classTokenReplacer { property("\${version}", project.version) property("\${impl_version}", "git-${project.name}-${project.version}:${project.latestCommitHash()}") } } } java { withSourcesJar() withJavadocJar() } jar { from("LICENSE") { rename { "${it}_${project.name ?: rootProject.name}" } } } publishing { repositories { maven { name = "Via" url = "https://repo.viaversion.com/" credentials(PasswordCredentials) authentication { basic(BasicAuthentication) } } } publications { maven(MavenPublication) { groupId = project.maven_group artifactId = project.maven_name version = project.maven_version from components.java pom { name = "ViaAprilFools" description = "ViaVersion addon to add support for some notable Minecraft snapshots" url = "https://github.com/ViaVersion/ViaAprilFools" licenses { license { name = "GPL-3.0 License" url = "https://github.com/ViaVersion/ViaAprilFools/blob/main/LICENSE" } } developers { developer { id = "RK_01" } } scm { connection = "scm:git:git://github.com/ViaVersion/ViaAprilFools.git" developerConnection = "scm:git:ssh://github.com/ViaVersion/ViaAprilFools.git" url = "https://github.com/ViaVersion/ViaAprilFools.git" } } } } } String latestCommitHash() { def stdout = new ByteArrayOutputStream() exec { commandLine "git", "rev-parse", "--short", "HEAD" standardOutput = stdout } return stdout.toString().trim() }