Maven无法识别我的用户配置文件并寻找.m2文件夹在另一个位置。

5

我继承了另一个人的机器,但Maven认为我是不同的用户。这是我的身份:

C:\> echo %USERPROFILE%
C:\Users\awesomeuser

尽管Maven认为我是管理员,但它无法在那里创建.m2文件夹。
[INFO] Error stacktraces are turned on.
[DEBUG] Reading global settings from c:\apps\tools\apache-maven-3.1.0\bin\..\conf\settings.xml
[DEBUG] Reading user settings from C:\Users\Administrator\.m2\settings.xml
[DEBUG] Using local repository at C:\Users\Administrator\.m2\repository
[ERROR] Could not create local repository at C:\Users\Administrator\.m2\repository -> [Help 1]
org.apache.maven.repository.LocalRepositoryNotAccessibleException: Could not create local repository at C:\Users\Administrator\.m2\repository

有什么办法可以让Maven识别我是超级用户而不是管理员?
2个回答

3

我不确定哪个环境变量导致Maven查找错误的主目录。

但你可以使用-s--settings选项为每个执行设置,以控制在哪里查找settings.xml

或者,你可以通过更新\bin目录中的m2.conf来全局设置它。它设置了默认用户主目录。

编辑:

我做了更多的研究,发现Maven使用Java属性user.home。看起来有时可能会出错,不匹配你的用户配置文件。

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4787931


我更感兴趣的是默认情况下将其发送到我的用户目录。我不想每次手动覆盖它。 - stuff22
你尝试过输入“set”并查看是否有任何变量设置为管理员的主目录吗? - JustinKSU
更新答案,提供另一种选择。 - JustinKSU
是的,我已经做了所有这些。事实证明,我的问题更多是这种性质:https://dev59.com/fnI95IYBdhLWcg3w1BlN#2134775。我在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders中有大量对C:\Users\Administrator的引用。 - stuff22
这个答案更详细(有关user.home的第二个备选方案)。链接的错误解释了为什么@stuff22答案中的regedit hack起作用。基本上,这是因为在用户帐户创建后一段时间更改了Windows主目录。 - Incassator

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接