From b81e9d486a2ba160e245575c95d3b483d73ee360 Mon Sep 17 00:00:00 2001 From: jakevin Date: Mon, 19 Jun 2023 13:36:36 +0800 Subject: [PATCH] GEODE-10447: improve code for supporting JDK11 (#7882) --- .../apache/geode/test/concurrency/ConcurrentTestRunner.java | 6 ++++-- .../org/apache/geode/test/concurrency/loop/LoopRunner.java | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/ConcurrentTestRunner.java b/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/ConcurrentTestRunner.java index 1d0e03023df4..d71a85c3d9b7 100644 --- a/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/ConcurrentTestRunner.java +++ b/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/ConcurrentTestRunner.java @@ -14,6 +14,7 @@ */ package org.apache.geode.test.concurrency; +import java.lang.reflect.InvocationTargetException; import java.util.Arrays; import java.util.List; @@ -81,8 +82,9 @@ public ConcurrentTestRunner(Class testClass) throws InitializationError { } try { - runner = configuration.runner().newInstance(); - } catch (InstantiationException | IllegalAccessException e) { + runner = configuration.runner().getDeclaredConstructor().newInstance(); + } catch (InstantiationException | IllegalAccessException | InvocationTargetException + | NoSuchMethodException e) { throw new InitializationError(e); } } diff --git a/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/loop/LoopRunner.java b/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/loop/LoopRunner.java index 6747ed6a001b..04442cfec073 100644 --- a/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/loop/LoopRunner.java +++ b/geode-concurrency-test/src/main/java/org/apache/geode/test/concurrency/loop/LoopRunner.java @@ -46,7 +46,7 @@ public List runTestMethod(Method child) { ParallelExecutor executor = new DelegatingExecutor(executorService); for (int i = 0; i < count; i++) { try { - Object test = child.getDeclaringClass().newInstance(); + Object test = child.getDeclaringClass().getDeclaredConstructor().newInstance(); child.invoke(test, executor); } catch (InvocationTargetException ex) { Throwable exceptionToReturn = ex.getCause();