Джабреф не запустится

2508
mrchampe

При попытке запустить jabref я вижу следующую ошибку

WARN No appenders could be found for logger (org.java.plugin.ObjectFactory). log4j:WARN Please initialize the log4j system properly. Oct 31, 2012 1:04:43 PM net.sf.jabref.plugin.PluginCore initialize INFO: Found 2 plugin(s): - net.sf.jabref.core (jar:file:/usr/share/java/JabRef-2.5.jar!/plugins/net.sf.jabref.core/plugin.xml) - net.sf.jabref.export.misq (jar:file:/usr/share/java/JabRef-2.5.jar!/plugins/net.sf.jabref.export.misq/plugin.xml)  Unable to create graphical interface. 

ОС Ubuntu

cat /etc/issue Ubuntu 10.04.4 LTS \n \l  uname -a Linux desktop 2.6.32-32-generic #62-Ubuntu SMP Wed Apr 20 21:52:38 UTC 2011 x86_64 GNU/Linux 

Java-версия

java -version java version "1.6.0_24" OpenJDK Runtime Environment (IcedTea6 1.11.4) (6b24-1.11.4-1ubuntu0.10.04.1) OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode) 

И версия Jabref является

jabref -v 2.5 (build 67) 

Что действительно странно, так это то, что у меня установлен другой компьютер с Ubuntu, и jabref работает там без каких-либо ошибок. Я пробовал сравнивать различия, но не смог их найти. Кроме того, я уже пытался переустановить jabref, но это не помогло.

Кто-нибудь может подсказать, что искать?

4

1 ответ на вопрос

3
Alex

Use Oracle's JRE. Jabref seems to have problems with OpenJDK and IcedTea, as suggested here and here. Maybe only on 64-bit systems, but I don't know.

Several manuals show how to replace OpenJDK with Oracle Java, for example this. Follow them for instructions, if you generally want to use Oracle Java instead of OpenJDK.

If, instead, you want to leave your system as is, but use Oracle Java only for running JabRef, follow these steps:

  1. Download a JRE distribution. Choose the tgz package for your system (32 or 64 bit).
  2. Extract the JRE distribution into a dedicated folder, e.g. /home/user/bin/myjre.
  3. Download a JAR distribution of JabRef.
  4. Save JabRef.jar to a dedicated location, e.g. /home/user/bin/JabRef-2.9.2.jar.
  5. Execute JabRef by calling:

    /home/user/bin/myjre/bin/java -jar /home/user/bin/JabRef-2.9.2.jar

This leaves your system's OpenJDK intact and all other programs will continue to use that. Instead of steps 3 and 4 you could probably also locate the JabRef.jar that your package manager will install. This will usually be a slightly older version, however.

Похожие вопросы