如何有效地在Eclipse中使用大型Maven项目工作区?

Per*_*Per 5 java eclipse performance maven multi-module

我正在开发一个大型的基于Maven的多模块系统,该系统具有大约20个子模块以及少量的项目外部依赖关系,这些依赖关系也是我的Eclipse工作区中的Maven项目。总而言之,Eclipse工作区中大约有30个项目。

这些项目都是使用m2e导入的maven项目,我们使用Subversion(带有Subversive插件)进行源代码控制。Eclipse是最近更新的开普勒。

我的工作站功能强大,配备4核Intel i7 CPU,16 Gb RAM和固态硬盘。

问题在于,Eclipse在以下方面非常慢:

  1. 团队同步和解决冲突。每次我解决冲突并“标记为已合并”时,我都必须等待10-30秒以使Eclipse刷新工作空间等。更不用说冲突模式树视图随后会完全清除,因此我必须选择传出模式,然后再次以冲突模式填充。两次-因为它会在我保存解析的源文件时清除,然后在我标记为合并时清除。

  2. 建造。我使用Maven启动配置来进行Maven构建。但是由于某些原因,对于Eclipse而言,进行Maven构建是不够的-然后,它也必须对整个工作区进行自己的构建,这至少需要花费同样长的时间,而当Eclipse决定在“清除”上暂停几分钟时,则需要更长的时间。项目xxx'的输出文件夹,用于多个项目。

所有这些的结果是,通常需要一个多小时来从源代码管理进行更新,解决冲突,构建并准备运行或继续进行开发。

我和我的同事们经常觉得Eclipse在应该加强开发的同时阻碍了开发。

有什么办法可以减少永恒的食候综合征?

Plí*_*eão 1

我们也有同样的问题......我们工作区中的 72 个项目通常使得使用 m2e 变得不可能。我们尝试不使用 m2e 并启动 Maven 可执行文件作为具有某些配置的外部工具。您可以让 maven 生成您的 .project 和 .classpath 来更改 eclipse 配置:

mvn eclipse:eclipse
Run Code Online (Sandbox Code Playgroud)

这不是最好的选择,但却是我们现在所拥有的。

  • 328 个模块 - 超越它!我确实在哭泣寻求解决方案。(是的,减少模块数量就是其中之一......我们已经在着手了!) (2认同)