Java 7 for Mac OSX

Mike Swingler swingler at
Tue Feb 21 15:34:25 PST 2012

On Feb 21, 2012, at 3:18 PM, Johannes Schindelin wrote:

> Hi Richard,
> On Tue, 21 Feb 2012, Richard Bair wrote:
>> A *huge* (I would say, central) reason why Java deployment is
>> chronically struggling is related to installed JREs and
>> incompatibilities from one release to the next.
> That is what I referred to when I said "pushing the burden".
> I grant you that it would be easier on the JDK/JRE developers.
>> In addition, every single time we fix a bug with a semantic side effect,
>> somebody out there is going to be broken.
> You know, that is why some developers refrain from relying on undocumented
> behavior.
>> As an application developer, I would never, ever, release software
>> without tying it to exactly a specific version of the JRE. I would never
>> rely on Java being preinstalled, in any circumstance.  It is guaranteed
>> to break at some unspecified time in the future.
> By that reasoning, we should all ship our software together with specific
> OS versions (not allowing for system updates, that might change the
> behavior and break the application). Just completing the logical argument,
> is all I did.

That is precisely what enterprises do with mission-critical web apps on virtualized systems. They qualify the whole app/middleware/runtime/OS stack in a virtual machine, and clone it out their fleet of big iron boxes.

I think we are talking about UI applications on desktop OSs here, so speaking practically to your point: when a new OS comes out - it's up to you to test your app against it, if you claim to support that OS. Microsoft and Apple have great seeding programs for their OSs where you can get pre-release access to try out your app, report bugs, and get a peek at what is coming next. You should seriously consider participating in them (or asking your employer to) if you are professionally writing software as your livelihood. The story for Linux and Solaris is more diverse, but if you are deploying in those worlds, you already know the process and the issues.

> The way you are suggesting things to be done guarantees that some security
> flaw which was fixed in Java for decades will still come back to bite the
> users.  Or that improvements in the JIT do not reach them.

It's your choice how often you want to trade off the stability of a known JVM vs. the feature/performance benefits of a new JVM. If the JVM is changed out from under you, you have no choice.

> Just to be ultra-clear: is what you suggest -- to stop having a
> system-wide, well-maintained JRE in favor of JREs bundled with each and
> every Java application -- the official stance of Oracle, or is this just
> your personal opinion?

Not speaking for Oracle, but that is the logically the stance of Apple as of 2010, if you want to use Java 7 on the Mac:

Mike Swingler
Apple Inc.

More information about the macosx-port-dev mailing list