Use public getter to retrieve name from JarFile
ZipFile provides a public getter 'getName()' hence there is no need to
use reflection to access its private member 'name'.
Change-Id: If622fce7f902cc65483d66b834aff2c585b645e2
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
diff --git a/gerrit-launcher/src/main/java/com/google/gerrit/launcher/GerritLauncher.java b/gerrit-launcher/src/main/java/com/google/gerrit/launcher/GerritLauncher.java
index ef87395..33a3534 100644
--- a/gerrit-launcher/src/main/java/com/google/gerrit/launcher/GerritLauncher.java
+++ b/gerrit-launcher/src/main/java/com/google/gerrit/launcher/GerritLauncher.java
@@ -22,7 +22,6 @@
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
@@ -324,11 +323,8 @@
// ZipFile may have the path of our JAR hiding within itself.
//
try {
- Field nameField = ZipFile.class.getDeclaredField("name");
- nameField.setAccessible(true);
-
JarFile jar = ((JarURLConnection) myClazz.openConnection()).getJarFile();
- File path = new File((String) nameField.get(jar));
+ File path = new File(jar.getName());
if (path.isFile()) {
return path;
}