Spring有一个名为Spring IO http://platform.spring.io/platform/的新项目,目前还不清楚该项目与Spring Boot有什么区别。
我已经是一个spring引导用户,但不能告诉我是否应该使用SpringIO或只是继续使用spring boot。
如果我只唱Spring Boot而忽略Spring IO,我会错过什么吗?
我已经通读了Spring IO的文档,但上述问题的答案仍然不清楚。
Spring IO提供了由Spring Boot启动器管理的依赖项的超集-dependencies。Spring IO级别设置跨各个Spring项目的依赖关系,但没有额外的运行时需求。从这个意义上说,它不是一个项目,而是一个非常方便的依赖管理解决方案。
Spring IO是一个逻辑结构——你可以把各个部分看作是这个更大的托管平台的一部分。当然,这并不要求您使用所有的库。请查看公告博客了解更多详情。如果您想要使用Spring Boot启动器依赖项,那么没有理由进行更改。如果您正在使用其他Spring项目,而没有Spring Boot starter依赖项的好处,那么Spring IO平台就是为您量身定制的。
Spring boot提供给您many dependency-set to enable features
,它将提供include dependencies (properly) in your classpath
。另一方面,Spring IO没有提供任何依赖,it can only help you to manage your dependencies
(喜欢管理你的依赖版本),如果你需要任何依赖或依赖集(例如。通过spring boot),您需要自己动手添加它们。
Pilar Argudo在DZone上有一篇关于这种关系的有趣文章。以下是本文的结论:
- Spring IO Platforms允许你管理依赖关系,而不用担心它们之间的版本和兼容性。
- Spring Boot使用预定义的属性、注解和启动器作为依赖项,使Spring应用程序配置变得容易。
- Spring IO平台包括Spring Boot作为父平台。这是因为Spring IO平台包含了所有Spring Boot依赖项和启动器。
- 如果你想同时使用Spring IO Platform和Spring Boot,可以使用Spring IO Platform作为父平台。
注意Spring IO将到达生命周期结束。从项目主页:
该平台将于2019年4月9日结束其支持寿命。在此之前,将继续出版布鲁塞尔线和开罗线的维护版本。我们鼓励平台的用户开始使用Spring Boot的依赖项管理目录,要么使用Spring - Boot -starter-parent作为Maven项目的父目录,要么导入Spring - Boot -dependencies bom。
Spring IO Platform定义了一组可以包含在Java项目中的依赖项(都是Spring Framework依赖于第三方库),允许您选择必要的依赖项,而不必担心它们的版本之间的兼容性。和spring boot是不同的,因为它是一个使spring应用程序的开发和配置变得容易的框架。下面是一个预定义的属性和配置类列表,可以使用Java注释和启动器来包含它们。