如何在Eclipse中管理不同项目的不同Maven设置?

abh*_*414 5 java eclipse maven

我正在两个不同的项目上,都使用不同的Maven .settings.xml文件。
当我在项目之间切换时,它将重新下载存储库文件夹中的所有maven依赖项,从而删除了先前项目的依赖项。
有什么办法可以使用两个,settings并且为两个项目维护不同的存储库。

JUA*_*A M 5

您可以尝试将两个项目分隔在不同的工作空间中,并且可以使用eclipse配置每个工作空间,这是可能的,因为eclipse会将配置保存在每个工作空间中,因此您可以使用其maven settings.xml文件指定不同的存储库。

为此,请启动eclipse>转到首选项>选择maven>用户设置,然后单击“更新设置”

在此处输入图片说明

更新:

您应该具有类似于以下内容的结构:

工作区:

/Volumes/Stonehall/juanca/workspace-project-1/
/Volumes/Stonehall/juanca/workspace-project-2/
Run Code Online (Sandbox Code Playgroud)

仓库:

/Volumes/Stonehall/juanca/.m2/settings-project-1.xml
/Volumes/Stonehall/juanca/.m2/settings-project-2.xml
Run Code Online (Sandbox Code Playgroud)

打开并编辑settings-project-1.xml文件。搜索localRepository标签并替换路径,例如:

<localRepository>/Volumes/Stonehall/juanca/.m2/repository-1/</localRepository>
Run Code Online (Sandbox Code Playgroud)

打开并编辑settings-project-2.xml文件。搜索localRepository标签并替换为其他路径,例如:

<localRepository>/Volumes/Stonehall/juanca/.m2/repository-2/</localRepository>
Run Code Online (Sandbox Code Playgroud)

重要提示:例如,检查<localRepository>标记是否未注释:

<!--
...
<localRepository>/Volumes/Stonehall/juanca/.m2/repository/</localRepository>
-->
Run Code Online (Sandbox Code Playgroud)

日食:

打开workspace-project-1,转到首选项>选择maven>用户设置,然后单击“更新设置”并替换为新路径:

/Volumes/Stonehall/juanca/.m2/settings-project-1.xml
Run Code Online (Sandbox Code Playgroud)

您应该对进行相同的操作workspace-project-2,打开workspace-project-2并转到首选项>选择maven>用户设置,然后单击“更新设置”,然后替换为其他路径:

/Volumes/Stonehall/juanca/.m2/settings-project-2.xml
Run Code Online (Sandbox Code Playgroud)

使用此配置,每个项目都应在不同的存储库中下载依赖项。

此配置应该可以,但是如果不起作用,则应发布两个项目的settings.xml文件和pom文件,以便我们更好地帮助您