JabRef / jabref

Graphical Java application for managing BibTeX and biblatex (.bib) databases
https://devdocs.jabref.org
MIT License
3.55k stars 2.48k forks source link

JabRef not working on Arch Linux #5299

Closed aytekinar closed 5 years ago

aytekinar commented 5 years ago

I am on an Arch Linux machine with the following:

~/JabRef> git branch -vv
* master 4add3167c [origin/master] Bump jaxb-xjc from 2.2.4-1 to 2.3.2 (#4956)
~/JabRef> pacman -Q | grep -i java
java-environment-common 3-1
java-runtime-common 3-1
~/JabRef> archlinux-java status
Available Java environments:
  java-11-openjdk (default)
~/JabRef> java --version
openjdk 11.0.4 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11)
OpenJDK 64-Bit Server VM (build 11.0.4+11, mixed mode)
~/JabRef> git submodule status 
 e89e6b08b5c621a414fc7114f2129efac5f8c7d5 src/main/resources/csl-locales (heads/master)
 83603de7a7f4652f8d1733f18f0c00be8974948e src/main/resources/csl-styles (heads/master)

Steps to reproduce the behavior:

  1. gradle releaseJar or gradle shadowJar (see log)
  2. java -jar build/releases/JabRef-5.0-dev.jar

I have a failure with the following error:

Error: Could not find or load main class org.jabref.org.jabref.JabRefLauncher
Caused by: java.lang.ClassNotFoundException: org.jabref.org.jabref.JabRefLauncher
Log File ``` > Task :buildSrc:compileJava NO-SOURCE > Task :buildSrc:compileGroovy > Task :buildSrc:processResources NO-SOURCE > Task :buildSrc:classes > Task :buildSrc:jar > Task :buildSrc:assemble > Task :buildSrc:compileTestJava NO-SOURCE > Task :buildSrc:compileTestGroovy NO-SOURCE > Task :buildSrc:processTestResources NO-SOURCE > Task :buildSrc:testClasses UP-TO-DATE > Task :buildSrc:test NO-SOURCE > Task :buildSrc:check UP-TO-DATE > Task :buildSrc:build > Configure project : Found module name 'org.jabref' > Task :generateBibtexmlSource > Task :generateBstGrammarSource > Task :generateEndnoteSource > Task :generateMedlineSource > Task :generateModsSource > Task :generateSearchGrammarSource > Task :generateSource > Task :compileJava Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. > Task :processResources > Task :classes > Task :shadowJar > Task :releaseJar Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/5.6.1/userguide/command_line_interface.html#sec:command_line_warnings BUILD SUCCESSFUL in 37s 10 actionable tasks: 10 executed ```
homocomputeris commented 4 years ago

@j0hannes I have found it (see above) but it has old paths:

Icon=JabRef
Exec=JabRef %U
Path=/opt/JabRef/bin
j0hannes commented 4 years ago

@homocomputeris, what do you mean by "old paths"?

The icon is stored in /usr/share/pixmaps/ and doesn't need a full path here. On my machines, the icon is shown in the launcher, and clicking on it starts the application.

Screenshot_20191015_134248

homocomputeris commented 4 years ago

@j0hannes Well, I don't know why it doesn't appear in my system's Gnome menu.

I've reinstalled the package, and I have

$ lsa /usr/share/applications/JabRef.desktop 
-rw-r--r-- 1 root root 412 oct 15 12:46 /usr/share/applications/JabRef.desktop
$ cat lsa /usr/share/applications/JabRef.desktop
[Desktop Entry]
Name=JabRef
GenericName=BibTeX Editor
Comment=JabRef is an open source bibliography reference manager. The native file format used by JabRef is BibTeX, the standard LaTeX bibliography format.
Type=Application
Terminal=false
Icon=JabRef
Exec=JabRef %U
Path=/opt/JabRef/bin
Keywords=bibtex;biblatex;latex;bibliography
Categories=Office;
StartupWMClass=org-jabref-JabRefMain
MimeType=text/x-bibtex;
j0hannes commented 4 years ago

@homocomputeris, according to this page it should work like that.

LyzardKing commented 4 years ago

Does desktop-file-validate /usr/share/applications/JabRef.desktop return anything?

j0hannes commented 4 years ago

In my case it doesn't; I did that check before pushing the new version.

LyzardKing commented 4 years ago

In my case it doesn't; I did that check before pushing the new version.

Your launcher is shown in the menu, so it's correct. The command only shows errors.