You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Petr Široký (Jira)" <ji...@apache.org> on 2022/12/15 19:03:00 UTC

[jira] [Created] (MNG-7631) Current working directory is used as local repository (instead of ~/.m2/repository) when settings.xml contains empty element

Petr Široký created MNG-7631:
--------------------------------

             Summary: Current working directory is used as local repository (instead of ~/.m2/repository) when settings.xml contains empty <localRepository/> element
                 Key: MNG-7631
                 URL: https://issues.apache.org/jira/browse/MNG-7631
             Project: Maven
          Issue Type: Bug
          Components: Settings
    Affects Versions: 4.0.0-alpha-3, 4.0.0-alpha-2
         Environment: Linux x86_64 (Fedora 36)
            Reporter: Petr Široký


I have tried to build a sample project locally using Maven 4.0.0-alpha-3 and I am seeing one difference / inconsistency with the behavior of empty {{<localRepository/>}} tag in {{settings.xml}} file, when comparing to Maven 3.8.6.

My {{settings.xml}} file looks like this:
{code:xml}
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <localRepository/>
</settings>
{code}
When I run a build with Maven 3.8.6, everything works as I would expect and by default the {{~/.m2/repository}} is chosen.

However, if I build with Maven {{{}4.0.0-alpha-3{}}}, it chooses the _current working directory_ as the root directory for the local repository. So I end-up with directories like {{{}aopalliance{}}}, {{{}avalon-framework{}}}, etc., next to the {{{}pom.xml{}}}.

If I remove the empty element {{<localRepository/>}} from the {{{}settings.xml{}}}, then {{~/.m2/repository}} is chosen and it works the same as in Maven 3.x.

I was doing some quick testing and git bisecting and assuming I did not mess anything up, the commit causing this behavior is [https://github.com/apache/maven/commit/2a9f39336cec1d8e52d30cc48503d51ed8672536] - [MNG-7553] New clean API with immutable model ([#703|https://github.com/apache/maven/pull/703])

(and it's huge, so I haven't yet looked in detail at the changes).

I am not 100% sure this is a bug, but it is at least a difference in behavior comparing to Maven 3.x.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)