无法在/var/root/.m2/repository中创建本地存储库

Joh*_*ter 7 java maven

我当地的maven回购在这里/Users/power/.m2/repository.

但我得到了这个错误

[java] [ERROR] Could not create local repository at /var/root/.m2/repository -> [Help 1]
Run Code Online (Sandbox Code Playgroud)

似乎Maven认为它应该使用root用户repo.我该如何解决?我不需要使用root权限运行我的maven任务.

小智 10

默认的maven存储库是

${user.home}/.m2/repository/
Run Code Online (Sandbox Code Playgroud)

但是您可以使用settings.xml(${user.home}/.m2/settings.xml)将其更改为您具有权限的文件夹.或者$ {MAVEN_HOME}中的conf/settings.xml并更改:

<settings>
...
<localRepository>/path/to/local/repo/</localRepository>
...
</settings>
Run Code Online (Sandbox Code Playgroud)

理想情况下,您应该自己运行maven而不是root用户,以确保您拥有权限或首先执行'ksu'然后使用命令行.


Adi*_*sha 5

如果存在名为 .m2 的文件,则会发生此错误。(很可能是错误创建。当我将 settings.xml 复制为 .m2 时,这发生在我身上)如果您可以删除它并再次运行 mvn 命令,它将创建 .m2 文件夹,您可以毫不费力地继续。