mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2025-01-23 00:21:43 +01:00
159 lines
4.9 KiB
Groovy
159 lines
4.9 KiB
Groovy
// Aggregate Javadocs
|
|
buildscript {
|
|
repositories { jcenter() }
|
|
dependencies {
|
|
classpath 'com.netflix.nebula:gradle-aggregate-javadocs-plugin:2.2.+'
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id "java"
|
|
id "jacoco"
|
|
id "checkstyle"
|
|
id "org.sonarqube" version "2.7.1"
|
|
id "net.ltgt.apt" version "0.21"
|
|
id "net.ltgt.apt-idea" version "0.21"
|
|
id "com.github.johnrengelman.shadow" version "5.1.0"
|
|
}
|
|
|
|
apply plugin: 'nebula-aggregate-javadocs'
|
|
|
|
allprojects {
|
|
wrapper.gradleVersion = "5.5.1"
|
|
|
|
group "com.djrapitops"
|
|
version "5.0 BETA build %buildNumber%"
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
testLogging {
|
|
events "passed", "failed"
|
|
exceptionFormat "full"
|
|
}
|
|
}
|
|
|
|
// Fix for UTF-8 files showing with wrong encoding when compiled on Windows machines.
|
|
tasks.withType(JavaCompile) {
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
}
|
|
|
|
subprojects {
|
|
// Build plugins
|
|
apply plugin: "java"
|
|
apply plugin: "maven-publish"
|
|
apply plugin: "net.ltgt.apt" // Annotation processing plugin
|
|
apply plugin: "net.ltgt.apt-idea" // Annotation processing IntelliJ IDEA configuration plugin
|
|
apply plugin: "com.github.johnrengelman.shadow"
|
|
|
|
// Report plugins
|
|
apply plugin: "checkstyle"
|
|
apply plugin: "jacoco"
|
|
|
|
sourceCompatibility = 1.8
|
|
targetCompatibility = 1.8
|
|
|
|
ext.daggerVersion = "2.24"
|
|
ext.daggerCompilerVersion = "2.24"
|
|
|
|
ext.abstractPluginFrameworkVersion = "3.4.2"
|
|
|
|
ext.bukkitVersion = "1.13.2-R0.1-SNAPSHOT"
|
|
ext.spigotVersion = "1.13.2-R0.1-SNAPSHOT"
|
|
ext.paperVersion = "1.13.2-R0.1-SNAPSHOT"
|
|
ext.spongeVersion = "7.1.0"
|
|
ext.bungeeVersion = "1.13-SNAPSHOT"
|
|
ext.velocityVersion = "1.0-SNAPSHOT"
|
|
ext.redisBungeeVersion = "0.3.8-SNAPSHOT"
|
|
|
|
ext.httpClientVersion = "4.5.9"
|
|
ext.commonsTextVersion = "1.8"
|
|
ext.htmlCompressorVersion = "1.5.2"
|
|
ext.caffeineVersion = "2.8.0"
|
|
ext.h2Version = "1.4.199"
|
|
ext.mysqlVersion = "8.0.17"
|
|
ext.hikariVersion = "3.3.1"
|
|
ext.slf4jVersion = "1.7.28"
|
|
ext.geoIpVersion = "2.12.0"
|
|
ext.gsonVersion = "2.8.5"
|
|
ext.guavaVersion = "28.0-jre"
|
|
ext.bstatsVersion = "1.4"
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven { // Spigot Repository
|
|
url = "https://hub.spigotmc.org/nexus/content/repositories/snapshots/"
|
|
}
|
|
maven { // Paper Repository
|
|
url = "https://papermc.io/repo/repository/maven-public/"
|
|
}
|
|
maven { // Sponge Repository
|
|
url = "https://repo.spongepowered.org/maven"
|
|
}
|
|
maven { // BungeeCord Repository
|
|
url = "https://oss.sonatype.org/content/repositories/snapshots"
|
|
}
|
|
maven { // RedisBungee Repository
|
|
url = "http://repo.md-5.net/content/repositories/snapshots/"
|
|
}
|
|
maven { // Velocity Repository
|
|
url = "https://repo.velocitypowered.com/snapshots/"
|
|
}
|
|
maven { // bStats Repository
|
|
url = "https://repo.codemc.org/repository/maven-public"
|
|
}
|
|
maven { // Plan Repository
|
|
url = "https://dl.bintray.com/rsl1122/Plan-repository"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// Dependency Injection used across the project
|
|
compile "com.google.dagger:dagger:$daggerVersion"
|
|
annotationProcessor "com.google.dagger:dagger-compiler:$daggerCompilerVersion"
|
|
testAnnotationProcessor "com.google.dagger:dagger-compiler:$daggerCompilerVersion"
|
|
|
|
// Test Tooling Dependencies
|
|
testCompile "org.junit.jupiter:junit-jupiter-engine:5.5.1" // JUnit 5
|
|
testCompile "org.junit.platform:junit-platform-runner:1.5.1" // JUnit 4 runner for JUnit 5 tests
|
|
testCompile "org.junit.jupiter:junit-jupiter-params:5.5.1" // JUnit 5, parameterized tests
|
|
testCompile "org.mockito:mockito-core:3.0.0" // Mockito Core
|
|
testCompile "org.mockito:mockito-junit-jupiter:3.0.0" // Mockito JUnit 5 Extension
|
|
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
|
|
testCompile "org.xerial:sqlite-jdbc:3.28.0" // SQLite
|
|
testCompile "mysql:mysql-connector-java:$mysqlVersion" // MySQL
|
|
}
|
|
|
|
configurations {
|
|
testArtifacts.extendsFrom testRuntime
|
|
}
|
|
// Test classes available to other modules
|
|
task testJar(type: Jar) {
|
|
classifier "test"
|
|
from sourceSets.test.output
|
|
}
|
|
artifacts {
|
|
testArtifacts testJar
|
|
}
|
|
|
|
checkstyle {
|
|
configFile rootProject.file('config/checkstyle/checkstyle.xml')
|
|
}
|
|
|
|
jacocoTestReport {
|
|
reports {
|
|
xml.enabled true
|
|
xml.destination file("${buildDir}/jacoco/report.xml")
|
|
}
|
|
}
|
|
}
|
|
|
|
sonarqube {
|
|
properties {
|
|
property "sonar.projectName", "Player Analytics"
|
|
property "sonar.projectKey", "com.djrapitops:Plan"
|
|
}
|
|
} |