gluonhq / scenebuilder

Scene Builder is a visual, drag 'n' drop, layout tool for designing JavaFX application user interfaces.
https://gluonhq.com/products/scene-builder/
Other
747 stars 220 forks source link

Build information reported incorrectly #634

Open abhinayagarwal opened 1 year ago

abhinayagarwal commented 1 year ago

In case Scene Builder is running on a feature release like 20.0.1, it still shows Java version 20 on the build information. Although, the Java version towards the end of the dialog shows correct.

This discrepancy is due to the fact that build information is passed from Maven, which uses the same Java version to compile the project. This version only accepts major release version.

Steps to Reproduce

Run Scene Builder from source using any feature release JDK. Update <java.version> property in pom.xml.

Your Environment

Mac OS X, aarch64, 13.3.1

Screenshots

Screenshot 2023-05-08 at 2 10 20 PM

abhinayagarwal commented 1 year ago

If we use JDK 20 but target Java 17 in Maven, it will show Java Version: 17.

I am guessing this is correct behaviour.

Oliver-Loeffler commented 2 months ago

I will think about this and provide a proposal. May be we should distinguish between Java Language version and JVM version used.

AlmasB commented 2 months ago

Isn't one of them the java with which the app was built and as such it will never change for a given release. The other one is runtime java?

If so, a straightforward solution might be to just clarify the output by adding a new heading below "Logging", e.g. "Runtime Information" since we already have "Build Information" above.

Oliver-Loeffler commented 2 months ago

It is indeed the Java language version. You can build with Java 23 and SceneBuilder will show a language version of 22 or 21 or 17 depending on whats declared in POM.xml. Runtime version as you proposed and the language version.