在eclipse中,maven依赖项覆盖了项目依赖项

Use*_*er1 5 java eclipse maven

我有一个使用几个"模块"的"主项目".这些模块位于pom.xml中,但我也将模块的代码作为Eclipse中的项目.我在"属性|项目引用"和"属性| Java构建路径"中将模块定义为项目依赖项.我还确保所有Eclipse项目都位于Java Build Path中的"Order and Export"的顶部.

主项目无法识别eclipse中模块的更改.当我按F3查看代码时,它会从我的.m2目录中打开java源代码.这显然忽略了我的Eclipse项目.我错过了一些设置吗?我该怎么办?

esa*_*saj 7

您不需要将依赖项目添加到Project引用中(至少在使用m2eclipse-plugin时),只需将它们作为依赖项添加到主机的pom.xml中.自从我开始在Eclipse中使用Maven以来,我没有必要触及Build路径.

通过右键单击项目根目录 - > Maven - >启用工作区分辨率,确保已启用插件的工作区解析.如果显示"禁用工作空间分辨率",则表示已启用.您可能还需要在同一菜单下运行"更新项目配置".

这样,当您从Eclipse中运行主项目时,对其他项目所做的任何更改都将对主服务器"可见"(并且您甚至可以在运行时使用热交换,甚至可以在其他项目中使用热交换).


zie*_*mer 3

如果您正在使用 Maven,那么您非常希望致力于 Maven。即使您确实使用 Eclipse 特定的依赖项配置 Eclipse,只要您使用 Maven 更新项目配置,它就会完全重写您的配置。

我强烈建议将任何其他项目构建依赖项转换为可用作 Maven 依赖项的启用 Maven 的项目。

在您的特定情况下(通过使用 Maven 模块),这意味着确保每个模块都作为支持 m2e 的项目导入到 Eclipse 中。然后,m2e 将自动连接模块和其他依赖项目之间的依赖关系。