Uploaded image for project: 'Maven Wrapper'
  1. Maven Wrapper
  2. MWRAPPER-68

MVNW_REPOURL improperly formed distributionUrl

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.1.1
    • 3.2.0
    • Maven Wrapper Jar
    • None

    Description

      In Maven Wrapper v3.1.1, Installer::createDist(), file maven-wrapper/src/main/java/org/apache/maven/wrapper/Installer.java, was updated on line 74 to be:

      distributionUrl = new URI( mvnwRepoUrl ).resolve( "/" ).resolve( mvnPath );

      The above update is causing the distributionUrl to be improperly formed based on the MVNW_REPOURL environment variable and the mvnPath which is extracted from the distributionUrl in maven-wrapper.properties, specifically the substring starting with "org/apache/maven".

      The update was introduced in the following commit:

      https://github.com/apache/maven-wrapper/commit/22a3268def96e5e648aa97a49d9e146e529b7c87#diff-193f3775e6efb0b6ed01219b21272f9eb3861965ce3af3586a0ce8eb153359c0

      An example of the results are shown below.  Note the "Downloading" URI does not include the entire repo url, only the scheme, host, and port, then the maven path is appended.

      The repo url is getting truncated by the call to resolve( "/" ) on line 74.  I do not currently see a purpose for having this call in place.  I made the following update to line 74 and it works fine:

      distributionUrl = new URI( mvnwRepoUrl ).resolve( mvnPath );

      Note that in Maven Wrapper v3.1.0, the distributionUrl was formed simply by appending the maven path to the MVNW_REPOURL:
      distributionUrl = new URI( mvnwRepoUrl + "/" + mvnPath );

      Example output demonstrating issue:

      [exec] [INFO] Apache Maven Wrapper 3.1.1

      [exec] [INFO] Detected MVNW_REPOURL environment variable http://localhost:8081/repository/repo-maven-apache-org-maven2/

      [exec] [INFO] Installing Maven distribution /home/myexamplehome/maven/wrapper/dists/apache-maven-3.6.3-bin/cf3cf814

      [exec] [INFO] Downloading http://localhost:8081/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip

       

       

      Attachments

        Issue Links

          Activity

            People

              sjaranowski Slawomir Jaranowski
              Fund HumanFund
              Votes:
              1 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: