【问题标题】:How to change Maven local repository in eclipse如何在 Eclipse 中更改 Maven 本地存储库
【发布时间】:2012-05-01 09:33:35
【问题描述】:

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

但是,在我将项目导入工作站 PC 上的 Eclipse(实际上是 STS)后,我无法运行 mvn build(我安装了 m2e 插件),这主要是由于缺少来自其他模块的依赖项。我意识到 Eclipse 在我的工作站 PC 上使用了 settings.xml 和 repository/,因此 .m2 缓存中不会安装任何模块构建。

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

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

【问题讨论】:

    标签: eclipse maven


    【解决方案1】:

    我发现即使按照上述所有步骤操作,我仍然收到错误消息,指出我的 Maven 依赖项(即 pom.xml)指向不存在的 jar 文件。

    在“问题”选项卡中查看错误,由于某种原因,这些错误仍指向我的存储库的旧位置。这可能是因为我在创建工作区和项目后更改了 Maven 存储库的位置。

    这可以通过从 Eclipse 工作区中删除项目,然后通过 Package Explorer -> R/Click -> Import... -> Existing Projects 重新添加来轻松解决。

    【讨论】:

      【解决方案2】:

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

      处的 用户设置 条目

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

      如果不清楚,[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>
      

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

      感谢this comment by @ejaenv 设置文件中元素的名称:&lt;localRepository&gt;。请参阅Maven — Settings Reference 了解更多信息。

      感谢@Ajinkya's answer 在 Eclipse Photon 中指定用户设置值的位置。

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

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

      【讨论】:

      • 谢谢,这正是我想要做的。只是想添加一个注释,我必须重新启动 Eclipse 并右键单击项目并选择 Maven > 更新项目以清除所有错误
      【解决方案3】:

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

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

      别打我为什么可以在用户设置中配置全局设置...可能是因为您需要在 Windows 上按“开始”关闭您的 PC 的相同原因... :D

      【讨论】:

        【解决方案4】:

        在 Eclipse Photon 中导航到 Windows > Preferences > Maven > User Settings > User Setting

        对于“用户设置”,浏览到 maven 的 settings.xml。前任。在我的例子中,它位于路径 C:\Program Files\Apache Software Distribution\apache-maven-3.5.4\conf\Settings.xml

        根据 Settings.xml,本地存储库会自动配置到指定位置。

        【讨论】:

          【解决方案5】:

          这里是settings.xml --> C:\maven\conf\settings.xml

          【讨论】:

            【解决方案6】:

            位置可以在Maven->安装->全局设置中指定:settings.xml

            【讨论】:

            • ... 并且在 settings.xml 中必须更改 以指向您的本地存储库。
            • 刚安装的eclipse mars中没有“安装目录中的全局设置”
            • @Wooff,我也不是(在火星上)。
            • 我也是。对于较新版本的 Eclipse,此答案需要更新。
            • @Wooff 我添加了答案
            猜你喜欢
            • 2011-02-03
            • 1970-01-01
            • 1970-01-01
            • 2016-09-29
            • 2017-07-31
            • 2016-12-02
            • 1970-01-01
            • 1970-01-01
            • 2014-12-22
            相关资源
            最近更新 更多