refactorfirst / RefactorFirst

Identifies and prioritizes God Classes Highly Coupled classes, and Class Cycles in Java codebases you should refactor first.
Apache License 2.0
457 stars 42 forks source link

CLI jar needs to be signed #80

Open jimbethancourt opened 1 year ago

jimbethancourt commented 1 year ago

Unfortunately it appears that the CLI Jar needs to be signed. When it is downloaded from https://repo1.maven.org/maven2/org/hjug/refactorfirst/report/cli/0.5.0-M1/cli-0.5.0-M1.jar and executed, the following error is generated:

Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes at java.base/sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:340) at java.base/sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:282) at java.base/java.util.jar.JarVerifier.processEntry(JarVerifier.java:321) at java.base/java.util.jar.JarVerifier.update(JarVerifier.java:234) at java.base/java.util.jar.JarFile.initializeVerifier(JarFile.java:762) at java.base/java.util.jar.JarFile.ensureInitialization(JarFile.java:1033) at java.base/java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:72) at java.base/jdk.internal.loader.URLClassPath$JarLoader$2.getManifest(URLClassPath.java:883) at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:848) at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760) at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681) at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Class.java:467) at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:791) at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:686)

It looks like this StackOverflow post may have a solution: https://stackoverflow.com/questions/999489/invalid-signature-file-when-attempting-to-run-a-jar