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

NullPointerException if no Package is defined for the current class

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.6.3
    • Fix Version/s: 3.7.x-candidate
    • Component/s: POM
    • Labels:
      None
    • Environment:
      Windows 10, Java 8, custom classloading

      Description

      When the maven-resolver and related classes are used with a ClassLoader that doesn't define a java.lang.Package object for the loaded classes, the library throws a NullPointerException.

      Scenario: I'm using the maven-resolver classes to resolver artifacts from various repositories. I package the app, and deploy it to a custom environment where the ClassLoader for the app doesn't define a Package for the loaded classes. In these cases, when the maven-resolver library calls this.getClass().getPackage().getImplementationVersion() then a NullPointerException will occurr.

       The following classes are affected:
      DefaultSuperPomProvider.getSuperModel():81
      DefaultReportingConverter.<init>:56

      Code around the locations:

      String modelId = "org.apache.maven:maven-model-builder:"
          + this.getClass().getPackage().getImplementationVersion() + ":super-pom";
      InputSource inputSource = new InputSource();
      inputSource.setModelId( modelId );
      

      This exception makes the library unportable to different environments.

      Workaround:

      Implement a custom variant of the above classes that circumvent these parts of the code.

      Possible solution:

      Null checks, and hard coding the version number.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                sipka Bence Sipka
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated: