Description
There are a few scenarios when the Java version is silently downgraded. For example, when Kotlin is selected as the language, Java 8 will always be used. Another example in the future will be when Java 13 is offered. Gradle won't support Java 13 until 6.0 so a downgrade may be necessary in the interim.
The silent downgrade has caused some confusion in the past and continues to do so. See spring-io/initializr#739, for example. We should consider making the downgrade clearer to the user. One solution was originally being tracked in spring-io/initializr#773 until it was repurposed.
There are two mains approaches that have been thought of thus far:
- Update the UI to prevent combinations that would result in a downgrade
- Add a note in the
HELP.md
file that explains what has happened and why
We may even need a hybrid of the two as the first solution won't help for projects generated using a client other than the web UI.