Skip to content
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

jabref snap fails to start on ubuntu #11465

Closed
2 tasks done
RJDan opened this issue Jul 9, 2024 · 14 comments · Fixed by #11473
Closed
2 tasks done

jabref snap fails to start on ubuntu #11465

RJDan opened this issue Jul 9, 2024 · 14 comments · Fixed by #11473
Labels
build-system os: snap When JabRef is run as a snap on linux
Milestone

Comments

@RJDan
Copy link

RJDan commented Jul 9, 2024

JabRef version

5.14 (latest release)

Operating system

GNU / Linux

Details on version and operating system

OS: Ubuntu 24.04 LTS x86_64 Host: OptiPlex 7050 Kernel: 6.8.0-36-generic Uptime: 1 hour, 49 mins Packages: 2397 (dpkg), 6 (flatpak), 79 (snap) Shell: bash 5.2.21 Resolution: 2560x1440 WM: sway Terminal: kitty CPU: Intel i5-7600 (4) @ 4.100GHz GPU: Intel HD Graphics 630 GPU: AMD ATI Radeon HD 8830M / R7 250 / R7 M465X Memory: 9739MiB / 31960MiB

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

  1. Start Jabref from terminal or launcher (fuzzel)
  2. Nothing happens.
commands:
  - jabref.browser-proxy
  - jabref
snap-id:      T5x6neyM0Uc9OWDHGorm61NKxh3Bd47k
tracking:     latest/stable
refresh-date: today at 10:32 CEST
channels:
  latest/stable:    5.14.60000 2024-07-08 (3221) 217MB -
  latest/candidate: 5.14.60000 2024-07-08 (3221) 217MB -
  latest/beta:      5.14.60000 2024-07-08 (3221) 217MB -
  latest/edge:      5.14.60000 2024-07-08 (3221) 217MB -
installed:          5.14.60000            (3221) 217MB -

Appendix

This is what was printed to screen when I start the snap from the terminal.

Picked up _JAVA_OPTIONS: -Duser.home=/home/rjd/snap/jabref/3221
Messages are not initialized before accessing key: Display help on command line options
2024-07-09 12:07:23 [main] org.jabref.logic.journals.JournalAbbreviationLoader.loadRepository()
ERROR: Cannot read external journal list file /home/rjd/JabRef/abbrv.jabref.org/journalList_dots.csv: java.nio.file.NoSuchFileException: /home/rjd/JabRef/abbrv.jabref.org/journalList_dots.csv
	at java.base/sun.nio.fs.UnixException.translateToIOException(Unknown Source)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(Unknown Source)
	at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(Unknown Source)
	at java.base/java.nio.file.Files.newByteChannel(Unknown Source)
	at java.base/java.nio.file.Files.newByteChannel(Unknown Source)
	at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(Unknown Source)
	at java.base/java.nio.file.Files.newInputStream(Unknown Source)
	at java.base/java.nio.file.Files.newBufferedReader(Unknown Source)
	at [email protected]/org.jabref.logic.journals.AbbreviationParser.detectDelimiter(Unknown Source)
	at [email protected]/org.jabref.logic.journals.AbbreviationParser.readJournalListFromFile(Unknown Source)
	at [email protected]/org.jabref.logic.journals.JournalAbbreviationLoader.readAbbreviationsFromCsvFile(Unknown Source)
	at [email protected]/org.jabref.logic.journals.JournalAbbreviationLoader.loadRepository(Unknown Source)
	at [email protected]/org.jabref.Launcher.main(Unknown Source)
Gtk-Message: 12:07:24.201: Not loading module "atk-bridge": The functionality is provided by GTK natively. Please try to not load it.
2024-07-09 12:07:24 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Not updating theme because it hasn't changed
2024-07-09 12:07:24 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Theme set to Theme{type=CUSTOM, name='/home/rjd/msRNA_Mobile/JabRef/JabRef_themes/customDarkTheme_220128.css'} with base css StyleSheet{jrt:/org.jabref/org/jabref/gui/Base.css}
2024-07-09 12:07:24 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.addStylesheetToWatchlist()
INFO: Watching css /home/rjd/msRNA_Mobile/JabRef/JabRef_themes/customDarkTheme_220128.css for live updates
2024-07-09 12:07:25 [JavaFX Application Thread] org.jabref.gui.StateManager.setActiveDatabase()
INFO: No open database detected
Exception in Application start method
2024-07-09 12:07:27 [main] org.jabref.Launcher.main()
ERROR: Unexpected exception: java.lang.RuntimeException: Exception in Application start method
	at [email protected]/com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown Source)
	at [email protected]/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: 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 [email protected]/org.jabref.gui.maintable.SmartConstrainedResizePolicy.getContentWidth(Unknown Source)
	at [email protected]/org.jabref.gui.maintable.SmartConstrainedResizePolicy.initColumnSize(Unknown Source)
	at [email protected]/org.jabref.gui.maintable.SmartConstrainedResizePolicy.call(Unknown Source)
	at [email protected]/org.jabref.gui.maintable.SmartConstrainedResizePolicy.call(Unknown Source)
	at [email protected]/javafx.scene.control.TableView$6.invalidated(Unknown Source)
	at [email protected]/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source)
	at [email protected]/javafx.beans.property.ObjectPropertyBase.set(Unknown Source)
	at [email protected]/javafx.scene.control.TableView.setColumnResizePolicy(Unknown Source)
	at [email protected]/org.jabref.gui.maintable.MainTable.<init>(Unknown Source)
	at [email protected]/org.jabref.gui.LibraryTab.createMainTable(Unknown Source)
	at [email protected]/org.jabref.gui.LibraryTab.setupMainPanel(Unknown Source)
	at [email protected]/org.jabref.gui.LibraryTab.<init>(Unknown Source)
	at [email protected]/org.jabref.gui.LibraryTab.createLibraryTab(Unknown Source)
	at [email protected]/org.jabref.gui.importer.actions.OpenDatabaseAction.openTheFile(Unknown Source)
	at [email protected]/org.jabref.gui.importer.actions.OpenDatabaseAction.lambda$openFiles$0(Unknown Source)
	at java.base/java.lang.Iterable.forEach(Unknown Source)
	at [email protected]/org.jabref.gui.importer.actions.OpenDatabaseAction.openFiles(Unknown Source)
	at [email protected]/org.jabref.gui.frame.JabRefFrame.openLastEditedDatabases(Unknown Source)
	at [email protected]/org.jabref.gui.JabRefGUI.onShowing(Unknown Source)
	at [email protected]/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Unknown Source)
	at [email protected]/com.sun.javafx.event.EventUtil.fireEventImpl(Unknown Source)
	at [email protected]/com.sun.javafx.event.EventUtil.fireEvent(Unknown Source)
	at [email protected]/javafx.event.Event.fireEvent(Unknown Source)
	at [email protected]/javafx.stage.Window.fireEvent(Unknown Source)
	at [email protected]/javafx.stage.Window$12.invalidated(Unknown Source)
	at [email protected]/javafx.beans.property.BooleanPropertyBase.markInvalid(Unknown Source)
	at [email protected]/javafx.beans.property.BooleanPropertyBase.set(Unknown Source)
	at [email protected]/javafx.stage.Window.setShowing(Unknown Source)
	at [email protected]/javafx.stage.Window.show(Unknown Source)
	at [email protected]/javafx.stage.Stage.show(Unknown Source)
	at [email protected]/org.jabref.gui.JabRefGUI.openWindow(Unknown Source)
	at [email protected]/org.jabref.gui.JabRefGUI.start(Unknown Source)
	at [email protected]/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(Unknown Source)
	at [email protected]/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(Unknown Source)
	at [email protected]/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at [email protected]/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(Unknown Source)
	at [email protected]/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
	at [email protected]/com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)
	at [email protected]/com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$10(Unknown Source)
	... 1 more
@koppor koppor added this to the 5.15 milestone Jul 9, 2024
@koppor koppor added os: snap When JabRef is run as a snap on linux and removed os: linux labels Jul 9, 2024
@calixtus
Copy link
Member

calixtus commented Jul 9, 2024

I don't get it, how have we missed this? We tested the build and the installer... Hot fix will be done tonight.

@RJDan
Copy link
Author

RJDan commented Jul 9, 2024

Thanks for the quick response!!

@koppor koppor mentioned this issue Jul 9, 2024
2 tasks
@koppor
Copy link
Member

koppor commented Jul 9, 2024

Background: The snap-distributed version is a wrapper around the portable linux version of https://builds.jabref.org/main/ (in a state in a a certain point of time in the past)


I checked the current portable file. And it does not contain any journals. Need to investiage. (Also indicated by the output ERROR: Cannot read external journal list file /home/rjd/JabRef/abbrv.jabref.org/journalList_dots.csv above)

Update: The word "external" is important here. Seems like there is some local configuration and path mapping issues. Not release-criticial IMHO - and another issue.

Update One needs to open JabRef-100.0.jar. There, one finds journals/journal-list.mv. No need to worry.

@koppor
Copy link
Member

koppor commented Jul 9, 2024

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

But we have in our build.gradle following lines:

'--add-opens=javafx.controls/javafx.scene.control=org.jabref',

and

'javafx.controls/javafx.scene.control' : 'org.jabref',

@Siedlerchr
Copy link
Member

It would be interesting to see what is inside the cfg file inside the snap

@Siedlerchr
Copy link
Member

I could reproduce this unter Ubuntu 22.04 LTS in a VM.

@Siedlerchr
Copy link
Member

I found a workaround:
Go to /snap/jabref/3221/lib/runtime and run JabRef as program (right cllick "Run as program")

@Siedlerchr Siedlerchr changed the title jabref fails to start after system update jabref snap fails to start after system update Jul 9, 2024
@Siedlerchr Siedlerchr changed the title jabref snap fails to start after system update jabref snap fails to start on ubuntu Jul 9, 2024
@calixtus
Copy link
Member

calixtus commented Jul 9, 2024

Interestingly, works in Arch Linux

This was referenced Jul 9, 2024
@Siedlerchr
Copy link
Member

The problem is now fixed, you can use jabref from the --edge channel until we do a new release tomorrow

@OlafKleinBerlin
Copy link

OlafKleinBerlin commented Jul 10, 2024

I had a similar problem at Kubuntu 22.04 after the automatic update from 5.13 to 5.14. I managed to start jabref 5.14 by removing and reinstalling the package with snap. After loading a saved preference file from jabref 5.13 into jabref 5.14, I could no longer start jabref 5.14 until removing and reinstalling the package.

@koppor
Copy link
Member

koppor commented Jul 11, 2024

I had a similar problem at Kubuntu 22.04 after the automatic update from 5.13 to 5.14. I managed to start jabref 5.14 by removing and reinstalling the package with snap. After loading a saved preference file from jabref 5.13 into jabref 5.14, I could no longer start jabref 5.14 until removing and reinstalling the package.

@OlafKleinBerlin Could you share the preference file? Maybe also share what you changed in the preferences (not that important... An import should work...) It is really strange that this does not work...

@OlafKleinBerlin
Copy link

OlafKleinBerlin commented Jul 11, 2024

Dear koppor,

the preference file can be found in this post of me in the jabref forum.
When I was simply using jabref 5.14 without applying the workarounds discussed above, loading this preference file created an error message and afterwards I was not able to start JabRef without removing and reinstalling the package.

Later, I loaded this file using the workarounds discussed above and in the forum topic.
I got the error message discussed in my mentioned forum post, but I could start JabRef afterwards and it seemed that my preferences were applied. And according to this forum contribution an error for dealing with this file has been fixed.

@RJDan
Copy link
Author

RJDan commented Jul 11, 2024

I upgraded to 5.15 and I can now launch Jabref! Thank you!

@calixtus
Copy link
Member

Sorry for the inconvenience. Although we tested the app before releasing it, we did not run into this issue first. Thanks for your bug report and your patience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build-system os: snap When JabRef is run as a snap on linux
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants