On Tue, 5 May 2026 14:43:53 GMT, Christopher Schnick <[email protected]> 
wrote:

>> This PR allows Main classes to be launched if they extend the Application 
>> class, even when only having the JavaFX dependencies on the classpath 
>> instead of the module path. This issue has been there for a long time and 
>> was quite annoying for a lot of people: 
>> https://stackoverflow.com/questions/78501081/how-do-i-fix-error-javafx-runtime-components-are-missing-and-are-required-to-r.
>>  It is also a common use case for JavaFX developers when testing some PR to 
>> create a quick reproducer class without setting up the module path properly.
>> 
>> While it is true that launching modern JavaFX via the classpath is 
>> unuspported, it still launches and prints its own warnings, which is better 
>> than the previous behavior. The old launcher error message in this case is 
>> misleading as the runtime components aren't really missing, they are just 
>> not in the module path.
>> 
>> This change should not have any change in behavior for any other case.
>> 
>> ---------
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Christopher Schnick has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Revert optional check and move constant to proper scope

src/java.base/share/classes/sun/launcher/LauncherHelper.java line 1129:

> 1127:             // find the module with the FX launcher
> 1128:             // this method is only called if we can find the module
> 1129:             // in the first place, so it will always be present

I would prefer if the comment were reverted as the update/wording is very 
confusing.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/31016#discussion_r3189745210

Reply via email to