MNEMONIC-683: Remove deprecation warning during gradle build
Signed-off-by: Xiaojin Jiao <xjiao@apache.org>
diff --git a/mnemonic-core/src/main/java/org/apache/mnemonic/Utils.java b/mnemonic-core/src/main/java/org/apache/mnemonic/Utils.java
index 45f07ee..53dc03c 100644
--- a/mnemonic-core/src/main/java/org/apache/mnemonic/Utils.java
+++ b/mnemonic-core/src/main/java/org/apache/mnemonic/Utils.java
@@ -36,6 +36,7 @@
import java.util.Random;
import java.util.ServiceLoader;
import java.util.UUID;
+import java.lang.reflect.InvocationTargetException;
/**
* <p>
@@ -492,12 +493,12 @@
try {
for (Class<?> itm : proxyclses) {
if (EntityFactoryProxy.class.isAssignableFrom(itm)) {
- ret.add((EntityFactoryProxy)itm.newInstance());
+ ret.add((EntityFactoryProxy)itm.getDeclaredConstructor().newInstance());
} else {
throw new ConfigurationException(String.format("%s is not EntityFactoryProxy", itm.getName()));
}
}
- } catch (InstantiationException | IllegalAccessException e) {
+ } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
throw new IllegalArgumentException("Failed to instantiate assigned EntityFactoryProxy classes.", e);
}
return ret.toArray(new EntityFactoryProxy[0]);