Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-6626

NullPointerException in DefaultExceptionHandler

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 3.1.0, 3.6.0
    • 3.6.2
    • Core
    • None

    Description

      DefaultExceptionHandler classifies errors on goal execution. There is a special case when the root cause is NoClassDefFoundError with null message, it causes NPE with the stacktrace:

      java.lang.NullPointerException
       at org.apache.maven.exception.DefaultExceptionHandler.getReference (DefaultExceptionHandler.java:212)
       at org.apache.maven.exception.DefaultExceptionHandler.getReference (DefaultExceptionHandler.java:231)
       at org.apache.maven.exception.DefaultExceptionHandler.handle (DefaultExceptionHandler.java:101)
       at org.apache.maven.exception.DefaultExceptionHandler.handleException (DefaultExceptionHandler.java:96)
       at org.apache.maven.cli.MavenCli.execute (MavenCli.java:972)
       at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
       at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
       at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke (Method.java:498)
       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)
      
      

      The problem here is that the real exception is lost and it's even not present in debug log mode. The full root exception is attached to the ticket (original-exception.txt).

       

      The reason for this defect is trivial: DefaultExceptionHandler.java:212 does not have a null check for getMessage

      Attachments

        1. original-exception.txt
          18 kB
          Sergey Chernov

        Issue Links

          Activity

            People

              slachiewicz Sylwester Lachiewicz
              seregamorph Sergey Chernov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 1h
                  1h
                  Remaining:
                  Time Spent - 20m Remaining Estimate - 40m
                  40m
                  Logged:
                  Time Spent - 20m Remaining Estimate - 40m
                  20m