如何在eclipse中更改Maven本地存储库

Dav*_*hao 48 eclipse maven

我从导入另一台服务器上A.在服务器A上的共享驱动器的根目录下多模块Maven项目,mvn install将成功运行,和Maven设置正确使用repository/settings.xml/home/user/.m2.

但是,在我的工作站PC上将项目导入Eclipse(实际上是STS)后,我无法运行mvn build(我安装了m2e插件),主要是因为缺少其他模块的依赖项.我意识到,Eclipse的使用settings.xmlrepository/我的工作站电脑上,所以不会有安装在.m2目录缓存中的任何模块装配.

我正在尝试修改Maven以使用服务器A上的.m2目录.我只能将settings.xml设置为服务器A上的那个,但我无法更改本地存储库.我唯一的选择是"重新索引".

有没有办法将本地存储库更改为服务器A上的存储库,或者是否有更好的方法在一台服务器上安装代码,在另一台PC上编辑/构建/测试Tomcat?

在此输入图像描述

Dav*_*hao 49

可以在Maven-> Installation - > Global Settings:settings.xml中指定location

在此输入图像描述

  • ...并且必须在settings.xml中更改<localRepository>以指向本地存储库. (30认同)
  • 刚刚安装了eclipse火星,我没有"安装目录中的全局设置" (4认同)

sjn*_*ngm 14

在较新版本的Eclipse中,可以设置全局配置文件

Windows>首选项> Maven>用户设置>全局设置

不要打败我为什么可以在用户设置中配置全局设置...可能是因为你需要在Windows上按"开始"关闭你的电脑的原因相同...:D


mdf*_*t13 11

通常,这些回答了以下问题:如何更改您的用户设置文件?但我想回答的问题是如何更改我的本地 Maven 存储库位置。答案是您必须编辑settings.xml。如果该文件不存在,则必须创建它。您可以在Window > Preferences > Maven > User Settings 中设置或更改文件的位置。这是用户设置条目

Maven 用户设置对话框

这是第二个文件输入;第一个包含信息。

如果不清楚,[redacted]应替换为 .m2 文件夹的本地文件路径。

如果单击“打开文件”链接,它会打开settings.xml文件以在 Eclipse 中进行编辑。

如果您还没有settings.xml文件,以下内容会将本地存储库设置为名为 mdfst13 的用户的 Windows 10 默认值:

<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
                              https://maven.apache.org/xsd/settings-1.0.0.xsd">

  <localRepository>C:\Users\mdfst13\.m2\repository</localRepository>
</settings>
Run Code Online (Sandbox Code Playgroud)

您应该将其设置为适合您系统的值。我还没有测试过,但我怀疑在 Linux 中,默认值为/home/mdfst13/.m2/repository. 当然,您可能不想将其设置为默认值。如果您正在阅读本文,您可能希望将其设置为其他值。如果你想要默认值,你可以删除它。

感谢此评论通过@ejaenv在设置元素的文件的名称: <localRepository>。有关更多信息,请参阅Maven — 设置参考

感谢@ Ajinkya的回答指定在Eclipse中光子的用户设置值的位置。

如果您已有 settings.xml 文件,则应将其合并到现有文件中。即<settings<localRepository>应该只在文件中出现一次,并且您可能希望保留已经存在的任何设置。或者换一种说法,编辑任何现有的本地存储库条目(如果存在),或者仅将该行添加到文件中(如果不存在)。

我必须重新启动 Eclipse 才能将数据加载到新存储库中。“更新设置”和“重新索引”都不够。