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

Support property ${baseurl} to get RFC-compliant URL of project base directory

    XMLWordPrintableJSON

    Details

      Description

      If people currently need a URL to their project base directory or any file within, they need to write file://$\{basedir/}}. The problem about this approach is that it doesn't deliver a RFC-compliant URL since characters are not properly percent-encoded. Also, the exact number of slashes between file: and ${basedir} depends on the OS (e.g. file:///C:/user/ and file:///home/user, Unix paths have a leading slash by themselves, Windows not). This makes it currently impossible to configure plugins that expect a URL as input and do strict URL parsing.

      For this reason, I suggest to support an additional property ${baseurl} with the value

        baseurl = new File( basedir ).toURI().toString()
      

      for POM interpolation.

      Some day, when Maven/Wagon itself handle percent-encoded file: URLs correctly (WAGON-111), this property could also be used to define local deployment repos like we commonly use for testing.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                brettporter Brett Porter
                Reporter:
                bentmann Benjamin Bentmann
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: