在Eclipse Spring首选项中选中“禁用自动配置检测”会带来什么后果?

时间:2019-04-01 11:21:59

标签: spring-tools-4

我的意思是Window | Preferences | Spring | Beans支持下的Eclipse首选项 “禁用自动配置检测”。

未选中此选项时,我注意到保存Java文件时出现延迟: 建立工作区...

正在加载... ServerApplication 要么 正在加载... DaoConfig

这些消息用于位于工作区中的Spring Boot主应用程序类(ServerApplication)或带有@ComponentScan的Spring配置类(DaoConfig)。 这可能要花几秒钟,这有点烦人。

当我检查上述首选项时,我没有注意到加载这些类的延迟(至少对于Spring Boot主类而言)。

禁用自动配置检测会有什么后果,例如该选项真正起作用的是什么,我松散了什么功能?有文件指示吗?

是否可以在不禁用自动配置检测的情况下加快保存过程?

1 个答案:

答案 0 :(得分:0)

在STS3中,IDE创建了Spring应用程序的内部模型,以便可以在Spring Explorer视图中很好地显示Spring元素,并在Spring XML配置文件中提供内容辅助等等。为了构建内部Spring Beans模型,它需要知道在构建该模型时从何处开始。您可以在每个项目的属性中手动定义这些入口点:Spring -> Beans Support。该首选项允许您定义Spring XML配置文件和/或带有Spring注释的配置类,供IDE内部使用以建立该模型。

除此以外,还有一种机制可以自动检测那些文件(Spring XML配置文件和Spring Boot应用程序配置注释),因此您无需手动配置它们。但是结果是一样的。这些文件/类最终被配置为供IDE使用以构建此内部模型。

我想您看到的延迟来自构建此内部bean模型-至少这是消息表明您提到的内容。

到目前为止,对于背景。您可以禁用该自动配置机制,而无需手动配置这些文件/类。例如,这将导致Spring Explorer无法显示对那些项目有意义的任何内容。

作为一种替代选择,如果您主要是在Spring Boot项目中工作,我强烈建议您切换到全新的Spring Tools 4(也可以作为现成的Eclipse发行版提供)。它提供的功能集略有不同,并且以不同的方式实现,因此不需要昂贵的内部bean模型创建。您应该尝试一下。如果您缺少STS3中您还不喜欢的东西,但这些东西还不是Spring Tools 4的一部分,请告诉我们。