Exception on Linux 5.14-dev (rpm file)
sambo57u opened this issue ยท 18 comments
JabRef version
Latest development branch build (please note build date below)
Operating system
GNU / Linux
Details on version and operating system
Fedora 39
Checked with the latest development build (copy version output from About dialog)
- I made a backup of my libraries before testing the latest development version.
- I have tested the latest development version and the problem persists
Steps to reproduce the behaviour
Appendix
...
Log File
Paste an excerpt of your log file here
Just to be sure - you downloaded the latest build from https://builds.jabref.org/main/? We had this issue for some builds but I thought, we solved it.
Yes, the latest build from rpm (jabref-5.14.70-1.x86_64). Going back to 5.13 does not have the problem.
I unzipped the rpm here on mac and checked the cfg file and it contains the correct info..,,
@sambo57u Are you starting with the desktop file or running the binary file directly? Just curious if this makes a difference...
[Application]
app.mainmodule=org.jabref/org.jabref.Launcher
[JavaOptions]
java-options=-Djpackage.app-version=5.14.70
java-options=--add-exports=javafx.base/com.sun.javafx.event=org.jabref.merged.module
java-options=--add-exports=javafx.controls/com.sun.javafx.scene.control=org.jabref.merged.module
java-options=--add-opens=javafx.graphics/javafx.scene=org.jabref.merged.module
java-options=--add-opens=javafx.controls/javafx.scene.control=org.jabref.merged.module
java-options=--add-opens=javafx.controls/com.sun.javafx.scene.control=org.jabref.merged.module
I can't reproduce on openSUSE Leap.
It starts both ways, the exception message happens when you try to open any bibtex library.
I have an earlier version jabref-5.14.12-1.x86_64.rpm which also works fine.
Can you post the complete version string of the working version from the About window?
JabRef 5.14--2024-04-03--e08de39
Linux 6.8.7-200.fc39.x86_64 amd64
Java 21.0.2
JavaFX 22+30
@sambo57u Thank you so much for posting!
I installed the version of today on Windows WSL, Fedora. Works.
My version is of 19th of April. This is 16 days after 3rd of April. See 2024-04-19 is after 2024-09-03. Your first line in the comment.
Please, @sambo57u. Close JabRef. Try to download the rpm again https://builds.jabref.org/main/ and install it. Reopen JabRef.
Alternatively, you could try snapcraft
on Fedora and use the edge version of JabRef. Google says that https://snapcraft.io/docs/installing-snap-on-fedora is the way to install snap on Fedora.
Yes, the latest build from rpm (jabref-5.14.70-1.x86_64). Going back to 5.13 does not have the problem.
Where did you get the file from? On https://builds.jabref.org/main/, I see jabref-5.14-1.x86_64.rpm
only. Not some version 70
appended.
I downloaded again from your link and reinstalled. started again and have the same error. The app starts fine without giving a database name or opening one from File menu. As soon as you try to open a database it gives the above error,
or on the terminal:
PS: I am on KDE Plasma.
Messages are not initialized before accessing key: Display help on command line options
2024-04-20 15:11:19 [main] org.jabref.logic.protectedterms.ProtectedTermsLoader.update()
WARN: New protected terms resource '/protectedterms/computer_science.terms' is available and enabled by default.
2024-04-20 15:11:20 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Not updating theme because it hasn't changed
2024-04-20 15:11:20 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Theme set to Theme{type=EMBEDDED, name='Dark.css'} with base css StyleSheet{jrt:/org.jabref/org/jabref/gui/Base.css}
2024-04-20 15:11:21 [JavaFX Application Thread] org.jabref.gui.StateManager.setActiveDatabase()
INFO: No open database detected
(JabRef:23968): Gdk-WARNING **: 15:11:21.070: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
2024-04-20 15:11:30 [JavaFX Application Thread] org.jabref.gui.FallbackExceptionHandler.uncaughtException()
ERROR: Uncaught exception occurred in Thread[#42,JavaFX Application Thread,5,main]: java.lang.reflect.InaccessibleObjectException: Unable to make field private double javafx.scene.control.TableView.contentWidth accessible: module javafx.controls does not "opens javafx.scene.control" to module org.jabref
at java.base/java.lang.reflect.AccessibleObject.throwInaccessibleObjectException(Unknown Source)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(Unknown Source)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(Unknown Source)
at java.base/java.lang.reflect.Field.checkCanSetAccessible(Unknown Source)
at java.base/java.lang.reflect.Field.setAccessible(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.maintable.SmartConstrainedResizePolicy.getContentWidth(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.maintable.SmartConstrainedResizePolicy.initColumnSize(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.maintable.SmartConstrainedResizePolicy.call(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.maintable.SmartConstrainedResizePolicy.call(Unknown Source)
at javafx.controls@22.0.1/javafx.scene.control.TableView$6.invalidated(Unknown Source)
at javafx.base@22.0.1/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source)
at javafx.base@22.0.1/javafx.beans.property.ObjectPropertyBase.set(Unknown Source)
at javafx.controls@22.0.1/javafx.scene.control.TableView.setColumnResizePolicy(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.maintable.MainTable.(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.LibraryTab.createMainTable(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.LibraryTab.setupMainPanel(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.LibraryTab.(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.LibraryTab.createLibraryTab(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.importer.actions.OpenDatabaseAction.openTheFile(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.importer.actions.OpenDatabaseAction.lambda$openFiles$0(Unknown Source)
at java.base/java.util.ArrayList.forEach(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.importer.actions.OpenDatabaseAction.openFiles(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.importer.actions.OpenDatabaseAction.execute(Unknown Source)
at org.jabref@5.14.70/org.jabref.gui.actions.JabRefAction.lambda$new$3(Unknown Source)
at org.jabref.merged.module@5.14.70/org.controlsfx.control.action.Action.handle(Unknown Source)
at org.jabref.merged.module@5.14.70/org.controlsfx.control.action.Action.handle(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
at javafx.base@22.0.1/javafx.event.Event.fireEvent(Unknown Source)
at javafx.controls@22.0.1/javafx.scene.control.MenuItem.fire(Unknown Source)
at javafx.controls@22.0.1/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.doSelect(Unknown Source)
at javafx.controls@22.0.1/com.sun.javafx.scene.control.ContextMenuContent$MenuItemContainer.lambda$createChildren$12(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
at javafx.base@22.0.1/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
at javafx.base@22.0.1/javafx.event.Event.fireEvent(Unknown Source)
at javafx.graphics@22.0.1/javafx.scene.Scene$MouseHandler.process(Unknown Source)
at javafx.graphics@22.0.1/javafx.scene.Scene.processMouseEvent(Unknown Source)
at javafx.graphics@22.0.1/javafx.scene.Scene$ScenePeerListener.mouseEvent(Unknown Source)
at javafx.graphics@22.0.1/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(Unknown Source)
at javafx.graphics@22.0.1/com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at javafx.graphics@22.0.1/com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$2(Unknown Source)
at javafx.graphics@22.0.1/com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Unknown Source)
at javafx.graphics@22.0.1/com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(Unknown Source)
at javafx.graphics@22.0.1/com.sun.glass.ui.View.handleMouseEvent(Unknown Source)
at javafx.graphics@22.0.1/com.sun.glass.ui.View.notifyMouse(Unknown Source)
at javafx.graphics@22.0.1/com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
at javafx.graphics@22.0.1/com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
@sambo57u Can you try adding these lines to the java options in the cfg file: (opt/jabref/lib/app/JabRef.cfg) below the others?
java-options=--add-opens=javafx.controls/javafx.scene.control=org.jabref`
java-options=--add-exports=javafx.base/com.sun.javafx.event=org.jabref
java-options=--add-exports=javafx.controls/com.sun.javafx.scene.control=org.jabref
java-options=--add-opens=javafx.graphics/javafx.scene=org.jabref
java-options=--add-opens=javafx.controls/javafx.scene.control=org.jabref
java-options=--add-opens=javafx.controls/com.sun.javafx.scene.control=org.jabref
Adding those worked!
Okay thanks! Will create a PR with the fix later
Can you verify that this build works as well? https://builds.jabref.org/pull/11231/merge
I could only check the cfg and it seems to be correct now
Yes, this one works!
Thanks again for your quick testing and feedback!