Unable to Override Spring Boot Version Efficiently in Maven while using Spring IO Platform Pom (with possible resolution) #7048
Labels
status: declined
A suggestion or change that we don't feel we should currently apply
Currently we have created a parent pom that we use in for our environment to manage versions of our internal dependencies and third party dependencies. This parent pom has a parent of the Spring IO Platform parent. The current platform pom uses 1.3.8.RELEASE of Spring Boot and there have been questions on how we can use the 1.4 version of Spring Boot while still using the parent for plugin management and dependency management.
After doing some analysis on the current structure of Spring Boot, I'm wondering if it makes sense to create a Spring-Boot Bom that would contain only Spring-Boot dependencies and have it as import scope inside of the spring-boot-dependencies pom. This should allow it to have a similar structure as the Spring Framework Bom and allow it to be flexible enough as new versions come along. Placing a property on this should allow users to override the version as necessary and also allow for flexibility of custom dependency management without having to worry about ordering them in a specific order as specified in the documentation:
http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-build-systems.html
The only issue with this is with the plugin management piece of Spring Boot as there isn't really a good way to override the versions in there while guaranteeing all the functionality required for the plugin. I know in the 1.3 version of Spring Boot, the spring-boot.version property controlled the plugin versions and I'm not sure if the plugin management will look the same in future versions. I know the property was removed in 1.4 due to confusion but with this structure maybe it could be reconsidered.
Let me know what you think and if there is another way that I may be missing.
The text was updated successfully, but these errors were encountered: