The value of the JavaFX runtime version system property, 'javafx.runtime.version', has the wrong format at runtime. Furthermore, its value at runtime is different than its value in the 'javafx.properties' file that is included in the JavaFX SDK package and in the 'javafx.base' JAR file.
SYSTEM / OS / JAVA RUNTIME INFORMATION
My system runs Ubuntu 22.04.3 LTS with the following build tools:
- cmake version 3.26.4
- gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
- OpenJDK Runtime Environment (build 19.0.2+7-44)
- Apache Ant(TM) version 1.10.13 compiled on January 4 2023
STEPS TO REPRODUCE
Build the attached Maven project and run its test cases as follows:
$ mvn clean package
EXPECTED RESULTS
All of the test cases should pass:
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
...
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0
ACTUAL RESULT
Two of the test cases fail:
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
...
[INFO]
[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR] VersionInfoTest.testRuntimeVersionFormat:191
Invalid version string: '21-internal+23-2023-09-29T13:32:53Z'
[ERROR] VersionInfoTest.testRuntimeVersionInFile:206
expected:<...ternal+23-2023-09-29[T13:32:53Z]>
but was:<...ternal+23-2023-09-29[-133253]>
[INFO]
[ERROR] Tests run: 9, Failures: 2, Errors: 0, Skipped: 0
The JavaFX runtime version contains the colon character ":", which is not permitted in a JavaFX version string. In addition, the version string is different at runtime than its value in the 'javafx.properties' file.
SOURCE CODE FOR AN EXECUTABLE TEST CASE
The source code is found in the following GitHub repository:
https://github.com/jgneff/version-info-test
I also attached the files 'pom.xml' and 'VersionInfoTest.java' to this bug report.
WORKAROUND
None.