Review Request: 8001533: Java launcher must launch JavaFX applications
Mandy Chung
mandy.chung at oracle.com
Thu Nov 15 23:17:02 UTC 2012
Hi David,
On 11/14/12 9:43 AM, David DeHaven wrote:
> Bug:
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8001533
>
> Webrev:
> http://cr.openjdk.java.net/~ddehaven/8001533/webrev.0/
java.c: L427 it would be helpful to add a comment to explain
the case where appClass is different than mainClass.
Probably the comment above L425 should be updated to
reflect the support for JavaFX
L428-430: is this fallback needed? Would it be better
if LauncherHelper.getApplicationClass() always returns
a non-null class if the mainClass has been loaded successfully.
Looks like this is the case in your implementation.
LauncherHelper.java
L746 missing space between 'if' and '('
The javadoc for the checkAndLoadMain method would need to be
updated
The change looks okay to me and I can't spot anything wrong there.
L496-517 somewhat duplicates the logic added for FX in the
getMainClassFromJar method. Have you considered some refactoring
work you could do to simplify the fix since I think once you get
the classname of the entry point (either from a JAR or command-line
and with and without the static void main method), the logic is
essentially the same. To elaborate, I see that FXHelper.launchName
L707-725 is needed mainly to give a useful error message. When
you find the classname of the entry point, perhaps you can load
the class and catch any linkage error and determine if it's caused
by the absence of FX runtime and output an appropriate error.
If the main class is successfully loaded, then proceed with
L496-517 (or something like that). Just an idea you can explore.
FXLauncherTest.java - very good test that covers many test cases.
Do you plan to add the classpath case (i.e. not from a
jar file)?
Mandy
More information about the core-libs-dev
mailing list