Package Details: jabref 5.15-3

Git Clone URL: https://aur.archlinux.org/jabref.git (read-only, click to copy)
Package Base: jabref
Description: Graphical Java application for managing BibTeX and biblatex (.bib) databases
Upstream URL: https://www.jabref.org/
Licenses: MIT
Submitter: Allan
Maintainer: Bevan
Last Packager: Bevan
Votes: 215
Popularity: 0.97
First Submitted: 2012-06-07 22:47 (UTC)
Last Updated: 2025-01-17 16:00 (UTC)

Dependencies (4)

Required by (0)

Sources (8)

Pinned Comments

Bevan commented on 2024-03-28 17:57 (UTC)

Everyone who struggles to update right now: Please install the jdk21-openjdk package. It provides java-environment=21.

Bevan commented on 2022-03-14 20:04 (UTC)

@shmilee: I like that idea. Implemented in 5.5-2 using JABREF_OPTIONS as variable name.

Note that you can then also put that environment variable into your .bashrc, .pam_environment or something similar to be automatically applied.

shmilee commented on 2022-03-12 13:51 (UTC)

How about add an extra JavaOptions variable in launch script /usr/bin/jabref like this?

............
--module-path ${ROOT}/lib \
${JABREF_EXT_Options} \
--patch-module .............

So we can add the -Djdk.gtk.version=2 flag or -Dglass.gtk.uiScale=144dpi flag by cmdline, no need to edit /usr/bin/jabref after upgrade.

JABREF_EXT_Options='-Dglass.gtk.uiScale=144dpi -Djdk.gtk.version=2' jabref

matteodelabre commented on 2020-11-17 14:25 (UTC)

Using JabRef with i3wm, I’m running into the issue described at https://github.com/JabRef/jabref/issues/5867 in which clicking the menu bar sometimes opens then immediately closes the associated menu, rendering it unusable.

I was able to fix this issue by adding the -Djdk.gtk.version=2 flag after line 9 in https://aur.archlinux.org/cgit/aur.git/tree/jabref.sh?h=jabref (as suggested in the related bug report https://bugs.openjdk.java.net/browse/JDK-8251240). This change also removes the “XSetErrorHandler() called with a GDK error trap pushed. Don't do that.” warning mentioned by ruiin in a previous comment.

So far, I have not encountered any adverse side-effect from this workaround.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 10 .. 22 Next › Last »

gothicVI commented on 2023-11-05 06:58 (UTC)

@Bevan please always bump the pkgrel when updating...

Bevan commented on 2023-11-04 22:43 (UTC)

@danieltetraquark: Done. Thanks for the notice!

danieltetraquark commented on 2023-11-04 22:31 (UTC)

@Bevan could you set gradle>7 as a build requirement, as it doesn't build with the gradle7 package?

Vitrum-cnkj34kr8 commented on 2023-09-26 23:11 (UTC) (edited on 2023-09-26 23:14 (UTC) by Vitrum-cnkj34kr8)

@Bevan: I used (2) java-openjdk-bin, and Jabref has installed and works. At least, it starts and opens my files.

Bevan commented on 2023-09-26 20:55 (UTC)

@Vitrum-cnkj34kr8: Unfortunately, none of those options is the one I would suggest. "jdk-openjdk" (https://archlinux.org/packages/extra/x86_64/jdk-openjdk/) is the JDK included in the Arch repositories and it provides java-environment 21. So maybe just go ahead and install jdk-openjdk manually before building this package.

Vitrum-cnkj34kr8 commented on 2023-09-26 20:48 (UTC) (edited on 2023-09-26 20:50 (UTC) by Vitrum-cnkj34kr8)

On update, it asks me to choose a java-environment. Which one is the correct?

:: There are 8 providers available for java-environment=21:
1) amazon-corretto-21-bin
2) java-openjdk-bin
3) jdk
4) jdk-openjdk-xdg
5) jdk21-jetbrains-bin
6) jdk21-jetbrains-imfix
7) liberica-jdk-full-bin
8) zulu-21-bin

Bevan commented on 2023-09-26 20:17 (UTC)

The reason why I could not reproduce the issue is that I had jdk-temurin installed which currently is still at version 20. This means that gradle somehow tries to find a JDK matching the version specified as toolchain, no matter what we set via archlinux-java-run as $JAVA_HOME.

The best solution I can think of right now is exactly what Pavlov suggested: setting the toolchain in build.gradle to version 21 and forcing the use of JDK 21 for compilation and execution of JabRef. This is what I just pushed as jabref 5.10-2.

If anyone has a suggestion how we can avoid this issue while being more flexible with the JDK versions, please leave a comment.

Bevan commented on 2023-09-26 19:45 (UTC)

Thanks Pavlov! By replicating your exact setup I am now able to reproduce the issue. I'll try to find the root cause.

Pavlov commented on 2023-09-26 10:18 (UTC)

I've "resolved" it by replacing

toolchain {
    languageVersion = JavaLanguageVersion.of(20)
}

with

toolchain {
    languageVersion = JavaLanguageVersion.of(21)
}

in build.gradle. It seems that JabRef requires exactly JDK20 to compile, however Arch Linux doesn't provide any package containing version 20 of JDK anymore.

Pavlov commented on 2023-09-26 07:00 (UTC)

@Bevan these are the outputs. archlinux-java status:

Available Java environments:
  java-11-openjdk
  java-17-openjdk
  java-21-openjdk
  java-8-openjdk/jre (default)

archlinux-java-run -a 20 -f jdk -j:

/usr/lib/jvm/java-21-openjdk