[JIRA] (JENKINS-53121) Surefire plugin produces NullPointerException when using Java 10

3 views
Skip to first unread message

jenkins@adamkoch.com (JIRA)

unread,
Aug 19, 2018, 6:08:02 PM8/19/18
to jenkinsc...@googlegroups.com
Adam Koch created an issue
 
Jenkins / Bug JENKINS-53121
Surefire plugin produces NullPointerException when using Java 10
Issue Type: Bug Bug
Assignee: Mark Waite
Components: git-client-plugin
Created: 2018-08-19 22:07
Labels: plugin git-client
Priority: Minor Minor
Reporter: Adam Koch

I tried running Maven install using Java 10 on the latest version of the repository 3.0.0-beta6-SNAPSHOT but got a NullPointerException.  I found that version 2.20.1 is reported to have an issue  with 
org.apache.maven.surefire.shade.org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast(SystemUtils.java:1626)
I think git-client-plugin just needs to be upgraded to the fixed version of Surefire: 2.21.0

maven install -e

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on project git-client: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test failed.: NullPointerException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on project git-client: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test 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:954)}}
{{ at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)}}
{{ at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)}}
{{ 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:564)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)}}
{{ at org.codehaus.classworlds.Launcher.main (Launcher.java:47)}}
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test 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:954)}}
{{ at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)}}
{{ at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)}}
{{ 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:564)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)}}
{{ at org.codehaus.classworlds.Launcher.main (Launcher.java:47)}}
Caused by: java.lang.NullPointerException
{{ at org.apache.maven.surefire.shade.org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast (SystemUtils.java:1626)}}
{{ at org.apache.maven.plugin.surefire.AbstractSurefireMojo.getEffectiveJvm (AbstractSurefireMojo.java:2107)}}
{{ at org.apache.maven.plugin.surefire.AbstractSurefireMojo.getForkConfiguration (AbstractSurefireMojo.java:1976)}}
{{ at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider (AbstractSurefireMojo.java:1111)}}
{{ at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked (AbstractSurefireMojo.java:954)}}
{{ at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute (AbstractSurefireMojo.java:832)}}
{{ 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:954)}}
{{ at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)}}
{{ at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)}}
{{ 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:564)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415)}}
{{ at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)}}
{{ at org.codehaus.classworlds.Launcher.main (Launcher.java:47)}}

 

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.10.1#710002-sha1:6efc396)

jenkins@adamkoch.com (JIRA)

unread,
Aug 19, 2018, 6:13:01 PM8/19/18
to jenkinsc...@googlegroups.com

mark.earl.waite@gmail.com (JIRA)

unread,
Aug 19, 2018, 6:23:02 PM8/19/18
to jenkinsc...@googlegroups.com
Mark Waite assigned an issue to Unassigned
 
Change By: Mark Waite
Assignee: Mark Waite

mark.earl.waite@gmail.com (JIRA)

unread,
Aug 19, 2018, 6:39:02 PM8/19/18
to jenkinsc...@googlegroups.com
Mark Waite commented on Bug JENKINS-53121
 
Re: Surefire plugin produces NullPointerException when using Java 10

The pull request looks good to me. However, I can't duplicate the problem because I can't compile the git client plugin with Java 10. Can you provide more details on your configuration that allows you to compile the git client plugin with Java 10?

Steps I used:

  1. Switch to Java 10
    $ export JAVA_HOME=/home/mwaite/mark-pc2.markwaite.net-agent/tools/hudson.model.JDK/jdk10/jdk-10.0.2
    $ export PATH=$JAVA_HOME/bin:$PATH
    $ java -version
    java version "10.0.2" 2018-07-17
    Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
    Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)
    
  2. Confirm maven version runs with Java 10
    $ mvn --version
    Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T12:33:14-06:00)
    Maven home: /home/mwaite/mark-pc2.markwaite.net-agent/tools/hudson.tasks.Maven_MavenInstallation/mvn/apache-maven-3.5.4
    Java version: 10.0.2, vendor: Oracle Corporation, runtime: /home/mwaite/mark-pc2.markwaite.net-agent/tools/hudson.model.JDK/jdk10/jdk-10.0.2
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "4.4.0-133-generic", arch: "amd64", family: "unix"
    
  3. Clone git client plugin master branch
    $ git clone https://github.com/jenkinsci/git-client-plugin
    $ cd git-client-plugin
    
  4. Compile git client plugin master branch with JDK 10 and Maven 3.5.4
    $ mvn compile
    [INFO] Scanning for projects...
    [INFO]
    [INFO] -----------------< org.jenkins-ci.plugins:git-client >------------------
    [INFO] Building Jenkins Git client plugin 3.0.0-beta6-SNAPSHOT
    [INFO] --------------------------------[ hpi ]---------------------------------
    [INFO]
    [INFO] --- maven-hpi-plugin:2.6:validate (default-validate) @ git-client ---
    [INFO]
    [INFO] --- maven-enforcer-plugin:3.0.0-M1:display-info (display-info) @ git-client ---
    [INFO] Maven Version: 3.5.4
    [INFO] JDK Version: 10.0.2 normalized as: 10.0.2
    [INFO] OS Info: Arch: amd64 Family: unix Name: linux Version: 4.4.0-133-generic
    [INFO]
    [INFO] --- maven-enforcer-plugin:3.0.0-M1:enforce (display-info) @ git-client ---
    [INFO] Ignoring requireUpperBoundDeps in com.google.guava:guava
    [INFO]
    [INFO] --- maven-localizer-plugin:1.24:generate (default) @ git-client ---
    [INFO]
    [INFO] --- maven-resources-plugin:3.0.2:resources (default-resources) @ git-client ---
    [INFO] Using 'UTF-8' encoding to copy filtered resources.
    [INFO] Copying 16 resources
    [INFO]
    [INFO] --- flatten-maven-plugin:1.0.1:flatten (flatten) @ git-client ---
    [INFO] Generating flattened POM of project org.jenkins-ci.plugins:git-client:hpi:3.0.0-beta6-SNAPSHOT...
    [INFO]
    [INFO] --- maven-compiler-plugin:3.7.0:compile (default-compile) @ git-client ---
    [INFO] Changes detected - recompiling the module!
    [INFO] Compiling 48 source files to /home/mwaite/git/jenkins/git-client-plugin/git-client-plugin/target/classes
    [INFO] /home/mwaite/git/jenkins/git-client-plugin/git-client-plugin/src/main/java/org/jenkinsci/plugins/gitclient/CliGitAPIImpl.java: Some input files use or override a deprecated API.
    [INFO] /home/mwaite/git/jenkins/git-client-plugin/git-client-plugin/src/main/java/org/jenkinsci/plugins/gitclient/CliGitAPIImpl.java: Recompile with -Xlint:deprecation for details.
    [INFO] -------------------------------------------------------------
    [ERROR] COMPILATION ERROR :
    [INFO] -------------------------------------------------------------
    [ERROR] java.nio.file.NoSuchFileException: /home/mwaite/git/jenkins/git-client-plugin/git-client-plugin/target/classes/META-INF/annotations/hudson.Extension
    [INFO] 1 error
    [INFO] -------------------------------------------------------------
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 3.861 s
    [INFO] Finished at: 2018-08-19T16:36:30-06:00
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project git-client: Compilation failure
    [ERROR] java.nio.file.NoSuchFileException: /home/mwaite/git/jenkins/git-client-plugin/git-client-plugin/target/classes/META-INF/annotations/hudson.Extension
    [ERROR]
    [ERROR] -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    

I have no objection to updating the surefire plugin version to a newer version. That's a good move in any case.

I would like to understand the difference between your environment and mine. Are you using a newer version of Java 10 or a newer version of Maven or something different?

o.v.nenashev@gmail.com (JIRA)

unread,
Aug 19, 2018, 7:33:02 PM8/19/18
to jenkinsc...@googlegroups.com

o.v.nenashev@gmail.com (JIRA)

unread,
Aug 19, 2018, 7:37:02 PM8/19/18
to jenkinsc...@googlegroups.com
Oleg Nenashev commented on Bug JENKINS-53121
 
Re: Surefire plugin produces NullPointerException when using Java 10

Jenkins development toolchain is not Java10-ready (see JENKINS-40689). Some fixes still need to be applied

mark.earl.waite@gmail.com (JIRA)

unread,
Aug 19, 2018, 7:55:01 PM8/19/18
to jenkinsc...@googlegroups.com
Mark Waite updated Bug JENKINS-53121
 

Merged to master branch in PR-355.

Change By: Mark Waite
Status: Open Fixed but Unreleased
Resolution: Fixed

o.v.nenashev@gmail.com (JIRA)

unread,
Oct 3, 2018, 5:57:31 PM10/3/18
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue
Change By: Oleg Nenashev
Labels: git-client java10 java11 plugin
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)

rene.scheibe@gmail.com (JIRA)

unread,
Dec 28, 2019, 7:15:04 PM12/28/19
to jenkinsc...@googlegroups.com
Change By: René Scheibe
Status: Fixed but Unreleased Resolved
Released As: git-client-3.0.0
This message was sent by Atlassian Jira (v7.13.6#713006-sha1:cc4451f)
Atlassian logo

mark.earl.waite@gmail.com (JIRA)

unread,
Dec 28, 2019, 8:36:03 PM12/28/19
to jenkinsc...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages