我正在将 Eclipse Mars 与 Maven (v 3.3) 结合使用。当我更新 pom 中的依赖项(更改版本)时,即使我右键单击我的项目并选择“Maven”->“更新项目”,我的 Eclipse-Maven 项目也不会选择它。我知道这一点是因为我在 Eclipse Java 编辑器中没有看到编译错误,而当我使用命令行构建项目时会看到这些错误
mvn clean install
当我从工作区中删除项目并重新导入它时,一切都会恢复正常。然而,这是一个繁琐的过程。如何让我的 Maven-Eclipse 项目自动检测 pom 中的更改并相应地更新项目库?
是的,在“项目”菜单中,选中“自动构建”。
当您将项目导入 Eclipse 时,请使用 Eclipse 自己的内置 Maven 支持(又名 m2e)。我建议不要使用mvn eclipse:eclipse
因为它没有给出最好的结果(正如你所看到的)。 Maven 是一个构建和依赖管理工具,而不是 IDE;在我看来,期望它来管理 IDE 特定的东西是愚蠢的(我意识到 Maven 团队的想法不同,Maven 应该负责管理你的 IDE,但这是无稽之谈)。
因此,如果您的系统上有可用的项目,请删除任何特定于 Eclipse 的文件(通常只是.classpath
, .project
,和文件夹.settings
),它们是由mvn eclipse:eclipse
并且您不希望它们干扰此处描述的“正确”导入过程。然后在 Eclipse 中,使用 File > Import > Maven > Existing Maven Projects 导入项目。这应该会导致 Eclipse 和 maven 之间更好的集成,包括在 pom 更改时自动更新 Eclipse 构建路径。
作为快速检查,以这种方式进行导入后,您应该看到一个名为Maven 依赖项在项目构建路径的“库”选项卡中(在“属性”对话框中)。像这样:
如果您希望 Eclipse 项目配置在每次 pom 更改时自动更新,可以在下面有一个(实验性)设置优先 > Maven。但请注意,这样做可能并不理想 - 正如中提到的此功能请求 https://bugs.eclipse.org/bugs/show_bug.cgi?id=441501,这是一个有点漫长的过程,涉及到 Eclipse 项目中的很多东西;每次都会自动执行此操作pom.xml
改变最终可能会带来比其价值更多的麻烦。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)