Flyway Engine < 10.0.0 with Java 11 required / Unclear release notes
jko
Posts: 3 New member
Hi all,
we are using Quarkus 3.5.3 in our project, which relates to Flyway 9.22.2. Quarkus states, that they run with Java 11. However, Flyway 9.22.2 only seems to run with Java 17+. Is that correct?
If I understand the Flyway release notes correctly, Flyway 10.0.0 should be the first version that requires Java 17 to run. Additionally, Flyway 9.14.1 introduces "multi-release builds" for Java 8 and Java 17. However, it is not explained what this means exactly and how to get the Java 8 version of the 9.14.1+ releases
Can you help me on this?
Thanks in advance
we are using Quarkus 3.5.3 in our project, which relates to Flyway 9.22.2. Quarkus states, that they run with Java 11. However, Flyway 9.22.2 only seems to run with Java 17+. Is that correct?
If I understand the Flyway release notes correctly, Flyway 10.0.0 should be the first version that requires Java 17 to run. Additionally, Flyway 9.14.1 introduces "multi-release builds" for Java 8 and Java 17. However, it is not explained what this means exactly and how to get the Java 8 version of the 9.14.1+ releases
Can you help me on this?
Thanks in advance
Answers
Can you tell me if this is for Flyway Desktop or Flyway CLI?
thanks for your answer.
I would go with Flyway Engine. I updated the title of my question to reflect this.
As I mentioned in my post, we use it in our Quarkus project.
For a command line user, as we started shipping version 17 of the Java Runtime Environment, they would not see a difference if they used the packaged environment as they would just be lifted to Java 17.
Users who use Flyway in their products, via the API, or use Flyway Maven or Gradle plugins or used the command line using their own Java Runtime Environment would not necessarily see any differences but wouldn't be getting the Java 17 improvements.
All of this should be automatically managed by the Java Runtime Environment and the user should not have to input anything to get this functionality to activate.
Any user using a Java Runtime Environment of versions 8,9,10,11,12,13,14,15 or 16 would be running the Java 8 Flyway code, while anyone running version 17 or above would be running the Java 17 version.
The most visual example of this is the debug message for which version of Java you are currently running in the command line, this is the standard message you would see in Java 17:
Below is the modified message that would print if you were using a version below Java 17. This was because this message was only in the Java 8 code: