aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
authorReinier Zwitserloot <r.zwitserloot@projectlombok.org>2019-05-06 21:26:29 +0200
committerReinier Zwitserloot <r.zwitserloot@projectlombok.org>2019-05-06 21:26:29 +0200
commitd41e804fe73faed5f8b90f4b472728bc3a0c85b7 (patch)
treef47d82c4f383cfdb242c803c88eadde5c2982944 /src/utils
parent2335f251665d43b4c8cebe00b980f07ef33bdb17 (diff)
downloadlombok-d41e804fe73faed5f8b90f4b472728bc3a0c85b7.tar.gz
lombok-d41e804fe73faed5f8b90f4b472728bc3a0c85b7.tar.bz2
lombok-d41e804fe73faed5f8b90f4b472728bc3a0c85b7.zip
[trivial] replacing all calls to Class.newInstance() with Class.getConstructor().newInstance to avoid warnings which are default in many JDK11+ environments, and it shouldn’t change anything (we handle the change from sneaky throwing to InvocationTargetException appropriately).
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/lombok/core/SpiLoadUtil.java10
-rw-r--r--src/utils/lombok/javac/Javac.java8
2 files changed, 13 insertions, 5 deletions
diff --git a/src/utils/lombok/core/SpiLoadUtil.java b/src/utils/lombok/core/SpiLoadUtil.java
index 02c02496..e685acd6 100644
--- a/src/utils/lombok/core/SpiLoadUtil.java
+++ b/src/utils/lombok/core/SpiLoadUtil.java
@@ -26,6 +26,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.annotation.Annotation;
+import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.net.URL;
@@ -108,10 +109,13 @@ public class SpiLoadUtil {
@Override public C next() {
try {
- return target.cast(Class.forName(names.next(), true, fLoader).newInstance());
+ return target.cast(Class.forName(names.next(), true, fLoader).getConstructor().newInstance());
} catch (Exception e) {
- if (e instanceof RuntimeException) throw (RuntimeException)e;
- throw new RuntimeException(e);
+ Throwable t = e;
+ if (t instanceof InvocationTargetException) t = t.getCause();
+ if (t instanceof RuntimeException) throw (RuntimeException) t;
+ if (t instanceof Error) throw (Error) t;
+ throw new RuntimeException(t);
}
}
diff --git a/src/utils/lombok/javac/Javac.java b/src/utils/lombok/javac/Javac.java
index 7a264e39..3cc72f4e 100644
--- a/src/utils/lombok/javac/Javac.java
+++ b/src/utils/lombok/javac/Javac.java
@@ -409,10 +409,14 @@ public class Javac {
} else {
try {
if (CTC_VOID.equals(tag)) {
- return (Type) JC_VOID_TYPE.newInstance();
+ return (Type) JC_VOID_TYPE.getConstructor().newInstance();
} else {
- return (Type) JC_NO_TYPE.newInstance();
+ return (Type) JC_NO_TYPE.getConstructor().newInstance();
}
+ } catch (InvocationTargetException e) {
+ throw sneakyThrow(e.getCause());
+ } catch (NoSuchMethodException e) {
+ throw sneakyThrow(e);
} catch (IllegalAccessException e) {
throw sneakyThrow(e);
} catch (InstantiationException e) {