mirror of
https://github.com/dmulloy2/ProtocolLib.git
synced 2024-12-25 10:38:19 +01:00
131 lines
3.3 KiB
Groovy
131 lines
3.3 KiB
Groovy
plugins {
|
|
id 'java-library'
|
|
id 'maven-publish'
|
|
id 'com.github.johnrengelman.shadow' version '8.1.1'
|
|
}
|
|
|
|
group = 'com.comphenix.protocol'
|
|
version = '5.3.0-SNAPSHOT'
|
|
description = 'Provides access to the Minecraft protocol'
|
|
|
|
def isSnapshot = version.endsWith('-SNAPSHOT')
|
|
|
|
repositories {
|
|
mavenLocal() // can speed up build, but may fail in CI
|
|
mavenCentral()
|
|
|
|
maven {
|
|
url 'https://repo.dmulloy2.net/repository/public/'
|
|
}
|
|
|
|
maven {
|
|
url 'https://hub.spigotmc.org/nexus/content/groups/public/'
|
|
}
|
|
|
|
maven {
|
|
url 'https://libraries.minecraft.net/'
|
|
metadataSources {
|
|
mavenPom()
|
|
artifact()
|
|
ignoreGradleMetadataRedirection()
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation 'net.bytebuddy:byte-buddy:1.14.14'
|
|
compileOnly 'org.spigotmc:spigot-api:1.20.6-R0.1-SNAPSHOT'
|
|
compileOnly 'org.spigotmc:spigot:1.21-R0.1-SNAPSHOT:remapped-mojang'
|
|
compileOnly 'io.netty:netty-all:4.0.23.Final'
|
|
compileOnly 'net.kyori:adventure-text-serializer-gson:4.14.0'
|
|
compileOnly 'com.googlecode.json-simple:json-simple:1.1.1'
|
|
|
|
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.10.0'
|
|
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.0'
|
|
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.10.0'
|
|
testImplementation 'org.mockito:mockito-core:5.6.0'
|
|
testImplementation 'io.netty:netty-common:4.1.97.Final'
|
|
testImplementation 'io.netty:netty-transport:4.1.97.Final'
|
|
testImplementation 'org.spigotmc:spigot:1.21-R0.1-SNAPSHOT:remapped-mojang'
|
|
testImplementation 'net.kyori:adventure-text-serializer-gson:4.14.0'
|
|
testImplementation 'net.kyori:adventure-text-serializer-plain:4.14.0'
|
|
}
|
|
|
|
java {
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
withJavadocJar()
|
|
withSourcesJar()
|
|
}
|
|
|
|
jar {
|
|
manifest {
|
|
attributes(
|
|
'paperweight-mappings-namespace': 'mojang'
|
|
)
|
|
}
|
|
}
|
|
|
|
shadowJar {
|
|
dependencies {
|
|
include(dependency('net.bytebuddy:byte-buddy:.*'))
|
|
}
|
|
relocate 'net.bytebuddy', 'com.comphenix.net.bytebuddy'
|
|
archiveFileName = 'ProtocolLib.jar'
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
testLogging {
|
|
exceptionFormat = 'full'
|
|
}
|
|
}
|
|
|
|
compileTestJava {
|
|
sourceCompatibility = JavaVersion.VERSION_21
|
|
targetCompatibility = JavaVersion.VERSION_21
|
|
}
|
|
|
|
processResources {
|
|
def includeBuild = isSnapshot && System.getenv('BUILD_NUMBER')
|
|
def fullVersion = includeBuild
|
|
? version + '-' + System.getenv('BUILD_NUMBER')
|
|
: version
|
|
|
|
eachFile { expand(['version': fullVersion]) }
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
mavenJava(MavenPublication) {
|
|
from components.java
|
|
|
|
afterEvaluate {
|
|
artifactId = 'ProtocolLib'
|
|
}
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
maven {
|
|
url isSnapshot
|
|
? 'https://repo.dmulloy2.net/repository/snapshots/'
|
|
: 'https://repo.dmulloy2.net/repository/releases/'
|
|
|
|
credentials {
|
|
username project.nexusUsername
|
|
password project.nexusPassword
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
|
|
tasks.withType(Javadoc) {
|
|
options.encoding = 'UTF-8'
|
|
}
|