2019-08-05 09:24:50 +02:00
|
|
|
// Aggregate Javadocs
|
|
|
|
buildscript {
|
|
|
|
repositories { jcenter() }
|
|
|
|
dependencies {
|
|
|
|
classpath 'com.netflix.nebula:gradle-aggregate-javadocs-plugin:2.2.+'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-12-18 20:13:05 +01:00
|
|
|
plugins {
|
|
|
|
id "java"
|
2018-12-19 18:24:33 +01:00
|
|
|
id "jacoco"
|
2019-01-03 11:52:01 +01:00
|
|
|
id "checkstyle"
|
2019-04-10 10:19:38 +02:00
|
|
|
id "org.sonarqube" version "2.7"
|
2019-05-01 10:16:51 +02:00
|
|
|
id "net.ltgt.apt" version "0.21"
|
2019-05-01 09:58:35 +02:00
|
|
|
id "net.ltgt.apt-idea" version "0.21"
|
2019-07-01 07:56:13 +02:00
|
|
|
id "com.github.johnrengelman.shadow" version "5.1.0"
|
2018-12-18 20:13:05 +01:00
|
|
|
}
|
|
|
|
|
2019-08-05 09:24:50 +02:00
|
|
|
apply plugin: 'nebula-aggregate-javadocs'
|
|
|
|
|
2018-12-18 20:13:05 +01:00
|
|
|
allprojects {
|
|
|
|
wrapper.gradleVersion = "5.0"
|
|
|
|
|
|
|
|
group "com.djrapitops"
|
2019-08-02 15:08:08 +02:00
|
|
|
version "4.9.1"
|
2018-12-26 20:44:59 +01:00
|
|
|
|
|
|
|
test {
|
2019-04-03 21:44:26 +02:00
|
|
|
useJUnitPlatform()
|
2018-12-26 20:44:59 +01:00
|
|
|
testLogging {
|
|
|
|
events "passed", "failed"
|
|
|
|
exceptionFormat "full"
|
|
|
|
}
|
|
|
|
}
|
2019-01-12 12:00:30 +01:00
|
|
|
|
|
|
|
// Fix for UTF-8 files showing with wrong encoding when compiled on Windows machines.
|
|
|
|
tasks.withType(JavaCompile) {
|
|
|
|
options.encoding = 'UTF-8'
|
|
|
|
}
|
2018-12-18 20:13:05 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
subprojects {
|
2019-01-08 12:25:23 +01:00
|
|
|
// Build plugins
|
2018-12-18 20:13:05 +01:00
|
|
|
apply plugin: "java"
|
2019-02-02 09:42:29 +01:00
|
|
|
apply plugin: "maven-publish"
|
2019-01-08 12:25:23 +01:00
|
|
|
apply plugin: "net.ltgt.apt" // Annotation processing plugin
|
|
|
|
apply plugin: "net.ltgt.apt-idea" // Annotation processing IntelliJ IDEA configuration plugin
|
2018-12-18 20:13:05 +01:00
|
|
|
apply plugin: "com.github.johnrengelman.shadow"
|
2019-01-08 12:25:23 +01:00
|
|
|
|
|
|
|
// Report plugins
|
2019-01-03 11:52:01 +01:00
|
|
|
apply plugin: "checkstyle"
|
2018-12-19 18:24:33 +01:00
|
|
|
apply plugin: "jacoco"
|
2018-12-18 20:13:05 +01:00
|
|
|
|
|
|
|
sourceCompatibility = 1.8
|
|
|
|
targetCompatibility = 1.8
|
|
|
|
|
2019-07-26 07:40:14 +02:00
|
|
|
ext.daggerVersion = "2.24"
|
2019-07-26 07:25:21 +02:00
|
|
|
ext.daggerCompilerVersion = "2.24"
|
2018-12-18 20:13:05 +01:00
|
|
|
|
2019-08-08 10:42:33 +02:00
|
|
|
ext.abstractPluginFrameworkVersion = "3.4.2"
|
2019-07-30 10:22:58 +02:00
|
|
|
ext.planPluginBridgeVersion = "4.9.0-R0.3"
|
2019-01-08 12:25:23 +01:00
|
|
|
|
2018-12-18 20:13:05 +01:00
|
|
|
ext.bukkitVersion = "1.12.2-R0.1-SNAPSHOT"
|
|
|
|
ext.spigotVersion = "1.12.2-R0.1-SNAPSHOT"
|
|
|
|
ext.paperVersion = "1.12.2-R0.1-SNAPSHOT"
|
|
|
|
ext.spongeVersion = "7.1.0"
|
|
|
|
ext.bungeeVersion = "1.12-SNAPSHOT"
|
|
|
|
ext.velocityVersion = "1.0-SNAPSHOT"
|
|
|
|
ext.redisBungeeVersion = "0.3.8-SNAPSHOT"
|
2019-01-08 12:25:23 +01:00
|
|
|
|
2019-06-12 10:03:33 +02:00
|
|
|
ext.httpClientVersion = "4.5.9"
|
2019-07-04 07:38:46 +02:00
|
|
|
ext.commonsTextVersion = "1.7"
|
2018-12-18 20:13:05 +01:00
|
|
|
ext.htmlCompressorVersion = "1.5.2"
|
2019-08-07 07:34:39 +02:00
|
|
|
ext.caffeineVersion = "2.8.0"
|
2019-04-30 10:07:52 +02:00
|
|
|
ext.h2Version = "1.4.199"
|
2019-07-22 07:41:24 +02:00
|
|
|
ext.mysqlVersion = "8.0.17"
|
2019-02-08 13:30:18 +01:00
|
|
|
ext.hikariVersion = "3.3.1"
|
2019-08-07 08:31:24 +02:00
|
|
|
ext.slf4jVersion = "1.7.27"
|
2018-12-18 20:13:05 +01:00
|
|
|
ext.geoIpVersion = "2.12.0"
|
2019-06-12 10:03:54 +02:00
|
|
|
ext.guavaVersion = "28.0-jre"
|
2019-04-30 18:12:41 +02:00
|
|
|
ext.bstatsVersion = "1.4"
|
2018-12-18 20:13:05 +01:00
|
|
|
|
|
|
|
repositories {
|
|
|
|
mavenCentral()
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // Spigot Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://hub.spigotmc.org/nexus/content/repositories/snapshots/"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // Paper Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://papermc.io/repo/repository/maven-public/"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // Sponge Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://repo.spongepowered.org/maven"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // BungeeCord Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://oss.sonatype.org/content/repositories/snapshots"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // RedisBungee Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "http://repo.md-5.net/content/repositories/snapshots/"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // Velocity Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://repo.velocitypowered.com/snapshots/"
|
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // bStats Repository
|
2019-04-30 18:12:41 +02:00
|
|
|
url = "https://repo.codemc.org/repository/maven-public"
|
2018-12-18 20:13:05 +01:00
|
|
|
}
|
2018-12-18 22:06:47 +01:00
|
|
|
maven { // PlanPluginBridge Repository
|
2018-12-18 20:13:05 +01:00
|
|
|
url = "https://dl.bintray.com/rsl1122/Plan-repository"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2019-01-08 12:25:23 +01:00
|
|
|
// Dependency Injection used across the project
|
2018-12-18 20:13:05 +01:00
|
|
|
compile "com.google.dagger:dagger:$daggerVersion"
|
2018-12-18 22:06:47 +01:00
|
|
|
annotationProcessor "com.google.dagger:dagger-compiler:$daggerCompilerVersion"
|
|
|
|
testAnnotationProcessor "com.google.dagger:dagger-compiler:$daggerCompilerVersion"
|
2018-12-18 20:13:05 +01:00
|
|
|
|
2018-12-18 22:06:47 +01:00
|
|
|
// Test Tooling Dependencies
|
2019-07-22 07:49:37 +02:00
|
|
|
testCompile "org.junit.jupiter:junit-jupiter-engine:5.5.1" // JUnit 5
|
2019-07-22 08:18:45 +02:00
|
|
|
testCompile "org.junit.platform:junit-platform-runner:1.5.1" // JUnit 4 runner for JUnit 5 tests
|
2019-07-22 07:39:07 +02:00
|
|
|
testCompile "org.junit.vintage:junit-vintage-engine:5.5.1" // JUnit 4 compatibility for JUnit 5
|
2019-07-22 08:39:51 +02:00
|
|
|
testCompile "org.junit.jupiter:junit-jupiter-params:5.5.1" // JUnit 5, parameterized tests
|
2019-07-09 07:40:33 +02:00
|
|
|
testCompile "org.mockito:mockito-core:3.0.0" // Mockito Core
|
2019-07-09 07:29:46 +02:00
|
|
|
testCompile "org.mockito:mockito-junit-jupiter:3.0.0" // Mockito JUnit 5 Extension
|
2019-01-08 12:25:23 +01:00
|
|
|
testCompile "org.seleniumhq.selenium:selenium-java:3.141.59" // Selenium (Browser tests)
|
|
|
|
testCompile "com.jayway.awaitility:awaitility:1.7.0" // Awaitility (Concurrent wait conditions)
|
|
|
|
|
|
|
|
// Testing dependencies required by Plan
|
2019-06-25 07:31:15 +02:00
|
|
|
testCompile "org.xerial:sqlite-jdbc:3.28.0" // SQLite
|
2019-07-08 11:16:06 +02:00
|
|
|
testCompile "mysql:mysql-connector-java:$mysqlVersion" // MySQL
|
2018-12-18 22:06:47 +01:00
|
|
|
}
|
2019-04-03 22:14:55 +02:00
|
|
|
|
2018-12-18 22:06:47 +01:00
|
|
|
configurations {
|
|
|
|
testArtifacts.extendsFrom testRuntime
|
|
|
|
}
|
2018-12-19 18:08:07 +01:00
|
|
|
// Test classes available to other modules
|
2018-12-18 22:06:47 +01:00
|
|
|
task testJar(type: Jar) {
|
|
|
|
classifier "test"
|
|
|
|
from sourceSets.test.output
|
|
|
|
}
|
|
|
|
artifacts {
|
|
|
|
testArtifacts testJar
|
2018-12-18 20:13:05 +01:00
|
|
|
}
|
2019-01-04 16:44:59 +01:00
|
|
|
|
|
|
|
checkstyle {
|
|
|
|
configFile rootProject.file('config/checkstyle/checkstyle.xml')
|
|
|
|
}
|
2018-12-19 18:24:33 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
sonarqube {
|
|
|
|
properties {
|
2018-12-19 18:29:43 +01:00
|
|
|
property "sonar.projectName", "Player Analytics"
|
|
|
|
property "sonar.projectKey", "com.djrapitops:Plan"
|
2018-12-19 18:24:33 +01:00
|
|
|
}
|
2018-12-18 20:13:05 +01:00
|
|
|
}
|