Bug#893251: jabref 3.8 is started with OpenJDK 9 instead of 8

tony mancill tmancill at debian.org
Tue Mar 20 05:40:47 UTC 2018


On Sun, Mar 18, 2018 at 04:28:26PM +0100, gregor herrmann wrote:
> > > You can run
> > > JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ jabref
> > Something is wrong here. Did openjdk-8 changed a bit?
> 
> Hm ...
>  
> > $ JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ jabref
> > Exception in thread "main" java.lang.NoSuchMethodError:
> > java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer; at
> > org.apache.logging.log4j.core.appender.OutputStreamManager.flushBuffer(OutputStreamManager.java:292)
> > at
> > org.apache.logging.log4j.core.appender.OutputStreamManager.flush(OutputStreamManager.java:303)
> > at
> > org.apache.logging.log4j.core.appender.OutputStreamManager.closeOutputStream(OutputStreamManager.java:308)
> > at
> > org.apache.logging.log4j.core.appender.OutputStreamManager.releaseSub(OutputStreamManager.java:137)
> > at
> > org.apache.logging.log4j.core.appender.AbstractManager.stop(AbstractManager.java:86)
> > at
> > org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.stop(AbstractOutputStreamAppender.java:142)
> > at
> > org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender.stop(AbstractOutputStreamAppender.java:136)
> > at
> > org.apache.logging.log4j.core.config.AbstractConfiguration.stop(AbstractConfiguration.java:359)
> > at
> > org.apache.logging.log4j.core.AbstractLifeCycle.stop(AbstractLifeCycle.java:136)
> > at
> > org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:550)
> > at
> > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:617)
> > at
> > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:634)
> > at
> > org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:229)
> > at
> > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
> > at
> > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
> > at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
> > at
> > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:122)
> > at
> > org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39)
> > at
> > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:46)
> > at
> > org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40)
> > at
> > org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55)
> > at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655) at
> > net.sf.jabref.JabRefMain.<clinit>(JabRefMain.java:37)
> 
> Ouch, I have to confirm that I get the same errors.
> 
> Maybe that's caused by the recent update of liblog4j2-java 2.8.2-2 -> 2.10.0-1
> 
> Indeed, downgrading liblog4j2-java to 2.8.2-2 helps.
> 
> Not sure if this is a jabref problem or a liblog4j2-java issue; let's
> hope the java experts can shed some light on this bug.

Ouch indeed!  I'm pretty certain that this is an issue with how
liblog4j2-java is being built for Debian.  There is some discussion of
the issue here [1].  Basically, we need to take precautions when
building libraries with JDK 9 that are expected to run with JDK 8
runtimes.

That said, so far I'm not able to build a liblog4j2-java from the
2.10.0-1 source package that will play nicely with jabref, but I'll keep
looking at that and other options (aside from suggesting that we start
recommending a stretch chroot for jabref...)

Cheers,
tony

[1] https://github.com/plasma-umass/doppio/issues/497
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-java-maintainers/attachments/20180319/eaa5e298/attachment.sig>


More information about the pkg-java-maintainers mailing list