views:

99

answers:

1

Apple "deprecated" Java and will stop supporting it in the future.

Assuming that Oracle will take over support for Java on the Mac, is there a way to be sure that Apple-specific hacks like those "put the menubar at the top of the screen" or "use the native theme by default" will be supported the same way on other JREs/JVMs targeting Apple's platform?

Is there some industry standard or precedence how situations like these are handled or is this an additional burden for the individual developer (== yet another runtime to test)?

Is it common practice to start from the perspective of the former implementation and replicate the bugs to behave like the Apple implementation? Or is it more likely that engineering will start from some "standard" Java like OpenJDK and will adapt it to the Mac OSX system introducing different bugs/APIs/settings to integrate into the native platform?

While the details of Apple's move and Oracle's reaction are still not clear, I would be very happy if someone with experience in "how big corporations behave in these situations" would step up and provide some insight.

+1  A: 

"use the native theme by default" is already possible in Oracle JVMs using the $JAVA_HOME/lib/swing.properties file (assuming $JAVA_HOME is an environment variable).

It should contain something like this:

# Swing properties
swing.defaultlaf=javax.swing.plaf.nimbus.NimbusLookAndFeel

Note: This is the Nimbus L&F name, a new vector-based cross-platform UI present in Java 6u10.

I don't know what the Mac L&F name is in Apple's JVM, and it may have a different name in Oracle's Mac JVM when they make it.

Sadly, I don't know how to force it to native without explicitly specifying it.

As for whether other properties, such as the merge menubar property, will work in an Oracle OSX JVM, we won't know until Oracle actually makes one.

R. Bemrose
Well, that sounds reasonable. I really wonder if there is a way to get the Windows theme on Windows, the GTK theme on Gnome, the Nimbus theme on KDE (only if KDE isn't using their GTK-to-Qt theme) and the Apple theme on the Mac without specifying each directly. That would be my "ideal" configuration...
soc