Page 1 of 1

[POSIX] v4.8.5 Does not run on Ubuntu 16.04LTS

Posted: 12 May 2019, 10:25
by chezmojo
The recent update of Filebot would not longer run with openjdk < 11, so I updated it and I get the following error:

Code: Select all

Exception in thread "main" jdk.internal.util.jar.InvalidJarIndexError: Invalid index
	at java.base/jdk.internal.loader.URLClassPath$JarLoader.getResource(URLClassPath.java:1025)
	at java.base/jdk.internal.loader.URLClassPath$JarLoader.getResource(URLClassPath.java:937)
	at java.base/jdk.internal.loader.URLClassPath$JarLoader.findResource(URLClassPath.java:912)
	at java.base/jdk.internal.loader.URLClassPath$1.next(URLClassPath.java:341)
	at java.base/jdk.internal.loader.URLClassPath$1.hasMoreElements(URLClassPath.java:351)
	at java.base/jdk.internal.loader.BuiltinClassLoader$1.hasNext(BuiltinClassLoader.java:357)
	at java.base/jdk.internal.loader.BuiltinClassLoader$1.hasMoreElements(BuiltinClassLoader.java:365)
	at java.base/java.lang.CompoundEnumeration.next(ClassLoader.java:3022)
	at java.base/java.lang.CompoundEnumeration.hasMoreElements(ClassLoader.java:3031)
	at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.nextProviderClass(ServiceLoader.java:1202)
	at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1220)
	at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1264)
	at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1299)
	at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1384)
	at java.base/jdk.internal.logger.BootstrapLogger$DetectBackend$1.run(BootstrapLogger.java:890)
	at java.base/jdk.internal.logger.BootstrapLogger$DetectBackend$1.run(BootstrapLogger.java:884)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/jdk.internal.logger.BootstrapLogger$DetectBackend.<clinit>(BootstrapLogger.java:884)
	at java.base/jdk.internal.logger.BootstrapLogger.useSurrogateLoggers(BootstrapLogger.java:922)
	at java.base/jdk.internal.logger.BootstrapLogger.releaseSurrogateLoggers(BootstrapLogger.java:1035)
	at java.base/jdk.internal.logger.BootstrapLogger.redirectTemporaryLoggers(BootstrapLogger.java:1054)
	at java.logging/java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:448)
	at java.logging/java.util.logging.LogManager$2.run(LogManager.java:394)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.logging/java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:382)
	at java.logging/java.util.logging.LogManager.getLogManager(LogManager.java:430)
	at java.logging/java.util.logging.Logger.demandLogger(Logger.java:648)
	at java.logging/java.util.logging.Logger.getLogger(Logger.java:717)
	at java.logging/java.util.logging.Logger.getLogger(Logger.java:701)
	at net.filebot.Logging.createConsoleLogger(Logging.java:48)
	at net.filebot.Logging.<clinit>(Logging.java:44)
	at net.filebot.Main.main(Main.java:153)
I tried with Oracle jvm 11 and 12 and they both give the same error.

I cannot use the Ubuntu/snap version due to issues with permissions/sandboxing in snap and the way my machine is configured, so the POSIX portable version is my only option.

Any help resolving this issue would be greatly appreciated.

Re: [POSIX] v4.8.5 Does not run on Ubuntu 16.04LTS

Posted: 12 May 2019, 10:40
by rednoah
Which apt repository are you using?
viewtopic.php?f=11&t=6028

If you're on 16.04 you'll want to use the JDK 8 package and install only the standard JDK 8 package as provided by your distribution:

Code: Select all

deb [arch=all] https://get.filebot.net/deb/ universal-jdk8 main

Re: [POSIX] v4.8.5 Does not run on Ubuntu 16.04LTS

Posted: 12 May 2019, 14:28
by chezmojo
I was running JDK 8 before the upgrade:

Code: Select all

/usr/lib/jvm/java-8-openjdk-amd64/bin/java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.16.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
but that gives:

Code: Select all

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: net/filebot/Main has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)
I am using the POSIX standalone version of filebot, not the APT repository.
Does filebot provide (yet another) version of java 8 that is specific to it?

Re: [POSIX] v4.8.5 Does not run on Ubuntu 16.04LTS

Posted: 12 May 2019, 14:36
by chezmojo
Ok, I just switched to the APT version and it works fine.

Thanks!