Bug#903769: libcommons-lang3-java: NPE with OpenJDK11 and maven-javadoc

Erich Schubert erich at debian.org
Sat Jul 14 15:54:07 BST 2018


Package: libcommons-lang3-java
Version: 3.7-1
Severity: important

When building a maven projects javadoc, I see the following NPE:

Execution attach-javadocs of goal org.apache.maven.plugins:maven-javadoc-
plugin:3.0.0:javadoc-no-fork failed.
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:213)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:154)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:146)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:117)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:81)
     at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
(SingleThreadedBuilder.java:56)
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
(LifecycleStarter.java:128)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:183)
     at org.debian.maven.Wrapper.main (Wrapper.java:89)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
     at java.lang.reflect.Method.invoke (Method.java:566)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard
(Launcher.java:330)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch
(Launcher.java:238)
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
(Launcher.java:415)
     at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:356)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution 
attach-
javadocs of goal 
org.apache.maven.plugins:maven-javadoc-plugin:3.0.0:javadoc-
no-fork failed.
     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
(DefaultBuildPluginManager.java:148)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:208)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:154)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:146)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:117)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:81)
     at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
(SingleThreadedBuilder.java:56)
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
(LifecycleStarter.java:128)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:183)
     at org.debian.maven.Wrapper.main (Wrapper.java:89)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
     at java.lang.reflect.Method.invoke (Method.java:566)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard
(Launcher.java:330)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch
(Launcher.java:238)
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
(Launcher.java:415)
     at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:356)
Caused by: java.lang.NullPointerException
     at org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast
(SystemUtils.java:1654)
     at
org.apache.maven.plugins.javadoc.AbstractJavadocMojo.getJavadocExecutable
(AbstractJavadocMojo.java:3703)
     at org.apache.maven.plugins.javadoc.AbstractJavadocMojo.executeReport
(AbstractJavadocMojo.java:2001)
     at org.apache.maven.plugins.javadoc.JavadocReport.generate
(JavadocReport.java:134)
     at org.apache.maven.plugins.javadoc.JavadocReport.doExecute
(JavadocReport.java:329)
     at org.apache.maven.plugins.javadoc.AbstractJavadocMojo.execute
(AbstractJavadocMojo.java:1909)
     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo
(DefaultBuildPluginManager.java:137)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:208)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:154)
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute
(MojoExecutor.java:146)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:117)
     at 
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject
(LifecycleModuleBuilder.java:81)
     at
org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
(SingleThreadedBuilder.java:56)
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute
(LifecycleStarter.java:128)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:194)
     at org.apache.maven.cli.MavenCli.main (MavenCli.java:183)
     at org.debian.maven.Wrapper.main (Wrapper.java:89)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:62)
     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:43)
     at java.lang.reflect.Method.invoke (Method.java:566)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard
(Launcher.java:330)
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch
(Launcher.java:238)
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
(Launcher.java:415)
     at org.codehaus.plexus.classworlds.launcher.Launcher.main
(Launcher.java:356)

Apparently, the root cause is a NPE here:

Caused by: java.lang.NullPointerException
     at org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast
(SystemUtils.java:1654)

and indeed I can reproduce this in jshell:

jshell> import org.apache.commons.lang3.*;
jshell> SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8)
|  Exception java.lang.NullPointerException
|        at SystemUtils.isJavaVersionAtLeast (SystemUtils.java:1654)
|        at (#3:1)



-- System Information:
Debian Release: buster/sid
   APT prefers unstable
   APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.16.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8), 
LANGUAGE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libcommons-lang3-java depends on:
ii  libcommons-parent-java  43-1

libcommons-lang3-java recommends no packages.

Versions of packages libcommons-lang3-java suggests:
pn  libcommons-lang3-java-doc  <none>

-- no debconf information



More information about the pkg-java-maintainers mailing list