plugins { id "java" id "jacoco" id "org.sonarqube" version "2.6.2" id "net.ltgt.apt" version "0.19" id "net.ltgt.apt-idea" version "0.19" id "com.github.johnrengelman.shadow" version "4.0.2" } allprojects { wrapper.gradleVersion = "5.0" group "com.djrapitops" version "4.6.0-SNAPSHOT" } subprojects { apply plugin: "java" apply plugin: "maven" apply plugin: "net.ltgt.apt" apply plugin: "net.ltgt.apt-idea" apply plugin: "com.github.johnrengelman.shadow" apply plugin: "jacoco" sourceCompatibility = 1.8 targetCompatibility = 1.8 ext.daggerVersion = "2.20" ext.daggerCompilerVersion = "2.20" ext.abstractPluginFrameworkVersion = "3.4.0" ext.planPluginBridgeVersion = "4.6.0" 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" ext.httpClientVersion = "4.5.6" ext.commonsTextVersion = "1.6" ext.htmlCompressorVersion = "1.5.2" ext.caffeineVersion = "2.6.2" ext.h2Version = "1.4.196" ext.hikariVersion = "3.2.0" ext.slf4jVersion = "1.7.25" ext.geoIpVersion = "2.12.0" ext.guavaVersion = "26.0-jre" ext.bstatsVersion = "1.2" 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 = "http://repo.bstats.org/content/repositories/releases/" } maven { // PlanPluginBridge Repository url = "https://dl.bintray.com/rsl1122/Plan-repository" } } dependencies { // Dependency Injection used accross 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.3.2" // JUnit 5 testCompile "org.junit.platform:junit-platform-runner:1.3.2" // JUnit 4 runner for JUnit 5 tests testCompile "org.junit.vintage:junit-vintage-engine:5.3.2" // JUnit 4 compatibility for JUnit 5 testCompile "org.junit.jupiter:junit-jupiter-params:5.3.2" // JUnit 5, parameterized tests testCompile "org.junit-pioneer:junit-pioneer:0.3.0" // TempDirectory, TODO DEPENDENCY TO BE REMOVED ON JUNIT 5.4 RELEASE testCompile "org.mockito:mockito-core:2.23.4" // Mockito Core testCompile "org.mockito:mockito-junit-jupiter:2.23.4" // 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.25.2" // SQLite } configurations { testArtifacts.extendsFrom testRuntime } // Test classes available to other modules task testJar(type: Jar) { classifier "test" from sourceSets.test.output } artifacts { testArtifacts testJar } } sonarqube { properties { property "sonar.projectName", "Player Analytics" property "sonar.projectKey", "com.djrapitops:Plan" } }