Maven
  1. Maven
  2. MNG-5258

localRepository in settings.xml does not handle ~ as home.dir

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.2.1, 3.0.4
    • Fix Version/s: 3.1.0-alpha-1
    • Component/s: Bootstrap & Build, Settings
    • Labels:
      None
    • Environment:
      Linux (Ubuntu 11.10), Java 6

      Description

      My provided settings.xml contained a localRepository part with the value ~/.m2/repository and when invoking any maven command, this caused issues.

      Steps to reproduce:

      1 - create a settings.xml with the following content:
      <settings>
      <!-- localRepository

      The path to the local repository maven will use to store artifacts.
      Default: ~/.m2/repository -->
      <localRepository>~/.m2/repository</localRepository>
      </settings>

      2 - run mvn clean in an existing project

      3 - maven will create a ~ directory in the project where it will download all artifacts to.

      Apart from essentially creating a private repository for each project (which can quickly take up way more space than necessary, cause issues about missing artifacts) it may also cause issues if you try to remove it and forget to escape the ; ie if you do rm -rf ~ instead of rm -rf ''.

      I also tested with maven 2.2.1 and that will blow up with errors about not being able to create /.m2/repository/<some path to an artifact>.

      Both 3.0.4 and 2.2.1 were downloaded from maven.apache.org, not installed via apt/dpkg.

        Activity

          People

          • Assignee:
            Robert Scholte
            Reporter:
            Thomas Zeeman
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development