Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

When trying to start jabref, I see the following error

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.

The OS is 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

The java version is

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)

And the jabref version is

jabref -v
2.5 (build 67)

What is really strange is that I have another Ubuntu computer set up similarly and jabref works there without any errors. I've tried comparing for differences but haven't been able to find any. Also, I've already tried re-installing jabref but that didn't help.

Could anyone suggest what to look for?

share|improve this question

1 Answer 1

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.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.