From 2ac2cb89c3ae056cd9bcd6068c06272f93f1df74 Mon Sep 17 00:00:00 2001 From: Henri Schubin Date: Sun, 30 Oct 2022 12:02:29 +0200 Subject: [PATCH] Fix scope of mixin, exclude junit provided by json-simple, correct dependency download failure logging (#2695) --- Plan/common/build.gradle | 5 ++++- .../plan/storage/database/SQLDB.java | 19 +++++++------------ Plan/sponge/build.gradle | 2 +- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/Plan/common/build.gradle b/Plan/common/build.gradle index 819efbc46..4fdee4596 100644 --- a/Plan/common/build.gradle +++ b/Plan/common/build.gradle @@ -58,7 +58,10 @@ dependencies { shadow "org.eclipse.jetty:jetty-server:$jettyVersion" shadow "org.eclipse.jetty:jetty-alpn-java-server:$jettyVersion" shadow "org.eclipse.jetty.http2:http2-server:$jettyVersion" - shadow 'com.googlecode.json-simple:json-simple:1.1.1' // json simple used by UUIDFetcher + shadow("com.googlecode.json-simple:json-simple:1.1.1") { // json simple used by UUIDFetcher + // json-simple has junit (a test dependency) compile scoped + exclude group: "junit", module: "junit" + } // Swagger annotations implementation "jakarta.ws.rs:jakarta.ws.rs-api:3.1.0" diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/SQLDB.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/SQLDB.java index 4805cbfdb..d2ddfc2de 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/SQLDB.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/SQLDB.java @@ -50,10 +50,7 @@ import org.apache.commons.lang3.concurrent.BasicThreadFactory; import java.sql.Connection; import java.sql.SQLException; import java.util.*; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; +import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; import java.util.function.Function; @@ -132,14 +129,12 @@ public abstract class SQLDB extends AbstractDatabase { if (downloadDriver) { DependencyManager dependencyManager = new DependencyManager(files.getDataDirectory().resolve("libraries")); dependencyManager.loadFromResource(getDependencyResource()); - CompletableFuture[] results = dependencyManager.download(null, DRIVER_REPOSITORIES); - for (int i = 0; i < results.length; i++) { - CompletableFuture result = results[i]; - Repository repository = DRIVER_REPOSITORIES.get(i); - result.exceptionally(error -> { - logger.warn("Failed to download " + getType().getName() + "-driver from " + repository.getHost() + ": " + error.getMessage() + ", " + error.getCause()); - return null; - }); + try { + dependencyManager.downloadAll(null, DRIVER_REPOSITORIES).get(); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } catch (ExecutionException e) { + logger.error("Failed to download " + getType().getName() + "-driver", e); } IsolatedClassLoader classLoader = new IsolatedClassLoader(); diff --git a/Plan/sponge/build.gradle b/Plan/sponge/build.gradle index c0f39f510..0331a7e9d 100644 --- a/Plan/sponge/build.gradle +++ b/Plan/sponge/build.gradle @@ -15,7 +15,7 @@ dependencies { shadow "org.bstats:bstats-sponge:$bstatsVersion" annotationProcessor "org.spongepowered:spongeapi:$spongeVersion" - shadow "org.spongepowered:mixin:0.7.11-SNAPSHOT" + compileOnly "org.spongepowered:mixin:0.7.11-SNAPSHOT" testImplementation "org.spongepowered:spongeapi:$spongeVersion" testImplementation project(path: ":common", configuration: 'testArtifacts')