2020-04-21 09:28:22 +02:00
|
|
|
import org.ajoberstar.grgit.Grgit
|
|
|
|
|
2016-02-23 05:11:28 +01:00
|
|
|
buildscript {
|
|
|
|
repositories {
|
|
|
|
mavenCentral()
|
2018-08-10 17:01:10 +02:00
|
|
|
maven { url = "https://oss.sonatype.org/content/repositories/snapshots/" }
|
2016-02-23 05:11:28 +01:00
|
|
|
jcenter()
|
|
|
|
}
|
2016-07-06 05:39:38 +02:00
|
|
|
dependencies {
|
2019-08-08 01:16:44 +02:00
|
|
|
classpath("com.github.jengelman.gradle.plugins:shadow:5.0.0")
|
2020-04-10 18:09:01 +02:00
|
|
|
classpath 'gradle.plugin.nl.javadude.gradle.plugins:license-gradle-plugin:0.14.0'
|
2020-05-14 14:16:10 +02:00
|
|
|
classpath 'com.bmuschko:gradle-nexus-plugin:2.3.1'
|
2016-02-23 05:11:28 +01:00
|
|
|
}
|
2018-01-25 07:46:41 +01:00
|
|
|
configurations.all {
|
|
|
|
resolutionStrategy {
|
2020-04-14 20:23:48 +02:00
|
|
|
force("org.ow2.asm:asm:8.0.1")
|
2020-09-02 16:10:44 +02:00
|
|
|
force("org.jetbrains:annotations:20.1.0")
|
2018-01-25 07:46:41 +01:00
|
|
|
}
|
|
|
|
}
|
2016-02-23 05:11:28 +01:00
|
|
|
}
|
2016-02-26 13:55:21 +01:00
|
|
|
|
2018-12-17 14:16:53 +01:00
|
|
|
plugins {
|
2019-08-06 21:05:04 +02:00
|
|
|
id "maven-publish"
|
2020-09-02 16:10:39 +02:00
|
|
|
id "org.ajoberstar.grgit" version "4.0.2"
|
2018-12-17 14:16:53 +01:00
|
|
|
}
|
|
|
|
|
2020-04-11 02:39:02 +02:00
|
|
|
group = "com.plotsquared"
|
2016-07-06 05:39:38 +02:00
|
|
|
|
2020-04-21 09:28:22 +02:00
|
|
|
ext {
|
|
|
|
git = Grgit.open(dir: new File(rootDir.toString() + "/.git"))
|
|
|
|
}
|
|
|
|
|
2020-08-26 13:57:20 +02:00
|
|
|
def ver = "5.13.3"
|
2020-05-01 16:53:40 +02:00
|
|
|
def versuffix = ""
|
|
|
|
ext {
|
|
|
|
if (project.hasProperty("versionsuffix")) {
|
|
|
|
versuffix = "-$versionsuffix"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
version = ver + versuffix
|
2017-08-09 07:04:59 +02:00
|
|
|
|
2016-09-26 10:31:08 +02:00
|
|
|
description = rootProject.name
|
2016-02-23 05:11:28 +01:00
|
|
|
|
2019-11-04 20:55:55 +01:00
|
|
|
allprojects {
|
2020-05-14 14:16:10 +02:00
|
|
|
apply(plugin: 'com.github.hierynomus.license')
|
|
|
|
apply(plugin: 'com.bmuschko.nexus')
|
|
|
|
|
2019-11-04 20:55:55 +01:00
|
|
|
gradle.projectsEvaluated {
|
|
|
|
tasks.withType(JavaCompile) {
|
|
|
|
options.compilerArgs << "-Xmaxerrs" << "1000"
|
|
|
|
}
|
|
|
|
}
|
2020-04-10 18:09:01 +02:00
|
|
|
license {
|
|
|
|
header rootProject.file('HEADER')
|
|
|
|
mapping 'java', 'SLASHSTAR_STYLE'
|
|
|
|
ext.year = 2020
|
|
|
|
includes(["**/*.java","**/*.js"])
|
|
|
|
}
|
2020-05-14 14:16:10 +02:00
|
|
|
nexus {
|
|
|
|
sign = false
|
|
|
|
repositoryUrl = 'https://mvn.intellectualsites.com/content/repositories/releases/'
|
|
|
|
snapshotRepositoryUrl = 'https://mvn.intellectualsites.com/content/repositories/snapshots/'
|
|
|
|
}
|
2019-11-04 20:55:55 +01:00
|
|
|
}
|
|
|
|
|
2016-02-23 05:11:28 +01:00
|
|
|
subprojects {
|
2019-08-08 01:16:44 +02:00
|
|
|
apply(plugin: "java")
|
|
|
|
apply(plugin: "maven")
|
|
|
|
apply(plugin: "eclipse")
|
|
|
|
apply(plugin: "idea")
|
|
|
|
apply(plugin: "com.github.johnrengelman.shadow")
|
2016-07-01 23:13:49 +02:00
|
|
|
|
2020-04-11 02:39:02 +02:00
|
|
|
group = "com.plotsquared"
|
2019-04-05 18:39:16 +02:00
|
|
|
|
|
|
|
clean.doFirst {
|
2019-08-08 01:16:44 +02:00
|
|
|
delete("../target")
|
2019-04-05 18:39:16 +02:00
|
|
|
}
|
2018-12-21 17:26:19 +01:00
|
|
|
|
2020-06-24 15:26:06 +02:00
|
|
|
javadoc.options.encoding = 'UTF-8'
|
|
|
|
|
2016-02-23 05:11:28 +01:00
|
|
|
dependencies {
|
2020-05-25 11:12:46 +02:00
|
|
|
compile group: 'org.json', name: 'json', version: '20200518'
|
2020-04-11 17:58:08 +02:00
|
|
|
|
2019-08-06 21:05:04 +02:00
|
|
|
implementation("com.sk89q.worldedit:worldedit-core:7.0.0") {
|
|
|
|
exclude(module: "bukkit-classloader-check")
|
|
|
|
exclude(module: "mockito-core")
|
|
|
|
exclude(module: "dummypermscompat")
|
2016-02-23 05:11:28 +01:00
|
|
|
}
|
2020-04-09 17:41:55 +02:00
|
|
|
|
2019-09-04 03:04:51 +02:00
|
|
|
implementation("net.kyori:text-api:3.0.2")
|
|
|
|
implementation("net.kyori:text-serializer-gson:3.0.2")
|
|
|
|
implementation("net.kyori:text-serializer-legacy:3.0.2")
|
|
|
|
implementation("net.kyori:text-serializer-plain:3.0.2")
|
2019-08-08 01:16:44 +02:00
|
|
|
implementation("com.google.guava:guava:21.0") {
|
|
|
|
because("Minecraft uses Guava 21 as of 1.13")
|
|
|
|
}
|
2020-09-02 16:10:44 +02:00
|
|
|
compileOnly("org.jetbrains:annotations:20.1.0")
|
2020-02-10 09:03:18 +01:00
|
|
|
compileClasspath("org.projectlombok:lombok:1.18.12")
|
|
|
|
testCompileOnly("org.projectlombok:lombok:1.18.12")
|
2019-08-08 01:16:44 +02:00
|
|
|
annotationProcessor("org.projectlombok:lombok:1.18.8")
|
|
|
|
testAnnotationProcessor("org.projectlombok:lombok:1.18.8")
|
2020-01-06 08:40:34 +01:00
|
|
|
testImplementation("junit:junit:4.13")
|
2019-08-08 01:16:44 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
configurations.all {
|
|
|
|
resolutionStrategy {
|
|
|
|
force("junit:junit:4.12")
|
|
|
|
force("com.google.guava:guava:21.0")
|
2020-09-02 16:10:44 +02:00
|
|
|
force("org.jetbrains:annotations:20.1.0")
|
2019-08-08 01:16:44 +02:00
|
|
|
force("com.google.code.findbugs:jsr305:3.0.2")
|
|
|
|
}
|
2016-02-23 05:11:28 +01:00
|
|
|
}
|
2019-04-20 17:26:31 +02:00
|
|
|
|
2016-02-23 05:11:28 +01:00
|
|
|
repositories {
|
|
|
|
mavenCentral()
|
2020-01-21 18:25:46 +01:00
|
|
|
maven { url = "https://maven.enginehub.org/repo/" }
|
|
|
|
maven { url = "https://repo.maven.apache.org/maven2" }
|
2019-08-08 01:16:44 +02:00
|
|
|
maven { url = "https://jitpack.io" }
|
|
|
|
}
|
|
|
|
|
|
|
|
shadowJar {
|
|
|
|
dependencies {
|
2020-05-25 20:11:57 +02:00
|
|
|
include(dependency("org.json:json:20200518"))
|
2019-08-08 01:16:44 +02:00
|
|
|
include(dependency("net.kyori:text-api:3.0.2"))
|
|
|
|
}
|
2020-04-11 02:39:02 +02:00
|
|
|
relocate("io.papermc.lib", "com.plotsquared.bukkit.paperlib")
|
2020-04-18 21:14:44 +02:00
|
|
|
relocate("org.json", "com.plotsquared.json") {
|
|
|
|
exclude "org/json/simple/**"
|
|
|
|
}
|
2020-05-14 14:51:23 +02:00
|
|
|
archiveFileName = "${project.name}-${parent.version}.jar"
|
2019-09-07 22:46:13 +02:00
|
|
|
destinationDirectory = file "../target"
|
2016-02-23 05:11:28 +01:00
|
|
|
}
|
2020-05-14 14:32:20 +02:00
|
|
|
|
|
|
|
version = rootProject.version
|
2018-08-10 17:01:10 +02:00
|
|
|
}
|
2019-05-02 16:54:14 +02:00
|
|
|
|
2019-08-06 21:05:04 +02:00
|
|
|
task aggregatedJavadocs(type: Javadoc, description: "Generate javadocs from all child projects as if it was a single project", group: "Documentation") {
|
2019-05-02 16:54:14 +02:00
|
|
|
destinationDir = file("./docs/javadoc")
|
|
|
|
title = "$project.name $version API"
|
|
|
|
options.author true
|
2019-08-06 21:05:04 +02:00
|
|
|
options.links "http://docs.spring.io/spring/docs/4.3.x/javadoc-api/", "http://docs.oracle.com/javase/8/docs/api/", "http://docs.spring.io/spring-ws/docs/2.3.0.RELEASE/api/", "http://docs.spring.io/spring-security/site/docs/4.0.4.RELEASE/apidocs/"
|
|
|
|
options.addStringOption("Xdoclint:none", "-quiet")
|
2019-05-02 16:54:14 +02:00
|
|
|
|
2019-08-08 01:16:44 +02:00
|
|
|
delete("./docs")
|
2019-05-02 20:51:52 +02:00
|
|
|
|
2019-05-02 16:54:14 +02:00
|
|
|
subprojects.each { proj ->
|
|
|
|
proj.tasks.withType(Javadoc).each { javadocTask ->
|
|
|
|
source += javadocTask.source
|
|
|
|
classpath += javadocTask.classpath
|
|
|
|
excludes += javadocTask.excludes
|
|
|
|
includes += javadocTask.includes
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|