New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fedora 29: Any versions above 3.8.2 do not start #4473

Open
eddie8de opened this Issue Nov 9, 2018 · 11 comments

Comments

Projects
None yet
5 participants
@eddie8de
Copy link

eddie8de commented Nov 9, 2018

In repositories, the version 2.10 is the latest one.

Any 3.x versions including 3.8.2, I can start with "java -jar JabRef-3.8.2.jar"

But any 4.x version, I can not start:
16:39:37.290 [AWT-EventQueue-0] ERROR org.jabref.FallbackExceptionHandler - Uncaught exception occurred in Thread[AWT-EventQueue-0,6,main]
java.lang.NoClassDefFoundError: javafx/scene/control/TextField
at org.jabref.gui.JabRefFrame.(JabRefFrame.java:166) ~[JabRef-4.3.1.jar:?]
at org.jabref.JabRefGUI.openWindow(JabRefGUI.java:104) ~[JabRef-4.3.1.jar:?]
at org.jabref.JabRefGUI.(JabRefGUI.java:67) ~[JabRef-4.3.1.jar:?]
at org.jabref.JabRefMain.lambda$start$1(JabRefMain.java:128) ~[JabRef-4.3.1.jar:?]
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) ~[?:1.8.0_191]
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) ~[?:1.8.0_191]
at java.awt.EventQueue.access$500(EventQueue.java:97) ~[?:1.8.0_191]
at java.awt.EventQueue$3.run(EventQueue.java:709) ~[?:1.8.0_191]
at java.awt.EventQueue$3.run(EventQueue.java:703) ~[?:1.8.0_191]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_191]
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) ~[?:1.8.0_191]
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) ~[?:1.8.0_191]
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) [?:1.8.0_191]
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) [?:1.8.0_191]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) [?:1.8.0_191]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [?:1.8.0_191]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) [?:1.8.0_191]
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) [?:1.8.0_191]
Caused by: java.lang.ClassNotFoundException: javafx.scene.control.TextField
at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[?:1.8.0_191]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_191]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[?:1.8.0_191]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_191]
... 18 more

I also tried the current 5.x developer Version:
Exception in Application start method
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389)
at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)
Caused by: java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$1(LauncherImpl.java:182)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: javafx/scene/control/Label
at org.jabref.preferences.JabRefPreferences.(JabRefPreferences.java:728)
at org.jabref.preferences.JabRefPreferences.getInstance(JabRefPreferences.java:793)
at org.jabref.JabRefMain.start(JabRefMain.java:56)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$8(LauncherImpl.java:863)
at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$7(PlatformImpl.java:326)
at com.sun.javafx.application.PlatformImpl.lambda$null$5(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$6(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at com.sun.glass.ui.gtk.GtkApplication.lambda$null$5(GtkApplication.java:139)
... 1 more
Caused by: java.lang.ClassNotFoundException: javafx.scene.control.Label
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
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)
... 12 more
Exception running application org.jabref.JabRefMain

Of cause everything installed like explained in the FAQ.

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 9, 2018

See FAQ/Installation instructions
http://help.jabref.org/en/Installation#fedora-and-openjdk

@Siedlerchr Siedlerchr closed this Nov 9, 2018

@eddie8de

This comment has been minimized.

Copy link

eddie8de commented Nov 9, 2018

Why closed? Nothing FAQ related!

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 9, 2018

You have either installed the wrong Java version and or the wrong javafx version or are missing the openjfx files. Maybe you have more than one Java version installed or the wrong javafx versions.

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 9, 2018

See issue #4471

@eddie8de

This comment has been minimized.

Copy link

eddie8de commented Nov 9, 2018

I checked that before posting the issue, so I'm pretty sure that it's only this one correct version, but I'll double check on Monday (sorry, the PC is at work).

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 9, 2018

Okay, you could also try to install the oracle jdk. This should work. Otherwise, I unfortunately have no idea.

@Siedlerchr Siedlerchr reopened this Nov 9, 2018

@laolux

This comment has been minimized.

Copy link

laolux commented Nov 12, 2018

I have exactly the same problem on my freshly installed Fedora 29.
JabRef 3.8.2 works fine, 4.1, 4.3.1 and master-latest do not.

I have installed:
java-1.8.0-openjdk, version 1.8.0.191.b12 (java-1.8.0-openjdk-1.8.0.191.b12-8.fc29.src.rpm)
java-1.8.0-openjdk-openjfx, version 1.8.0.191.b12 (java-1.8.0-openjdk-1.8.0.191.b12-8.fc29.src.rpm)

java -version:
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 12, 2018

Hm. that seems to be an issue with openjfx specifically on Fedora 29. It would be interesting to see, if the Oracle jdk works fine. https://www.oracle.com/technetwork/java/javase/downloads/index.html
Another thing is that this seems to be global problem with JavaFX, according to that report here, even the simplest app doesn't work:
https://ask.fedoraproject.org/en/question/128641/package-javafxscenecontrol-not-found-in-fedora-29/

@laolux

This comment has been minimized.

Copy link

laolux commented Nov 12, 2018

Ok, really seems to be a Fedora 29 problem. I found a bug report describing that openjdk-openjfx is pretty much broken in Fedora 29: https://bugzilla.redhat.com/show_bug.cgi?id=1644712
Someone is working on it, but might take a while.
So I suggest to close this bug as it is unrelated to JabRef.
It would be nice if someone could mention in the documentation that JabRef 4.x does not work with Fedora 29 with openjdk due to the aforementioned bug in Fedora. That could save some people quite some time searching for a solution.

@Siedlerchr

This comment has been minimized.

Copy link
Contributor

Siedlerchr commented Nov 12, 2018

You can easily edit the installation instructions page by yourself . Just scroll to the bottom and there is an edit button. It's probably the best to mention the bug report

@Siedlerchr Siedlerchr closed this Nov 12, 2018

@Siedlerchr Siedlerchr reopened this Nov 12, 2018

@stefan-kolb stefan-kolb added the linux label Nov 12, 2018

@alick

This comment has been minimized.

Copy link
Contributor

alick commented Nov 30, 2018

The fedora bug https://bugzilla.redhat.com/show_bug.cgi?id=1644712 is fixed now, and JabRef 4.3.1 can work fine on Fedora 29.

However, jabref master snapshot still won't work, due to missing libjfxwebkit.so in Fedora's packaging of openjfx. See https://bugzilla.redhat.com/show_bug.cgi?id=1547378 The reason is libjfxwebkit depends on ffmpeg and binary blobs, which are not allowed in (official) Fedora repo. But this probably is another issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment