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

              brett Brett Porter
              bentmann Benjamin Bentmann
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: