Java enthusiasts can relax a little bit: on Friday, Apple announced that it will work with Oracle to help create an open source Java SE 7 implementation for Mac OS X.
That would seem to be a 180-degree turn from last month’s news that Apple was deprecating the runtime of Java included in the company’s operating system. Apple will be contributing a host of technological components to the open source project, OpenJDK for Mac OS X, including both 32- and 64-bit Java virtual machines, class libraries, a networking stack, and the underpinnings of a new graphical client. In addition, Apple said that the current Java SE 6 implementation will continue to be available in both Snow Leopard and the upcoming Mac OS X Lion, due out next year.
The move makes sense for Apple, as it means it can hand over the Java technology it’s been using for years—lock, stock, and barrel—to the open source community. And it means that Apple no longer has responsibility for Java.
Indeed, Apple’s senior vice president of software engineering, Bertrand Serlet, said in the statement announcing the project, “The best way for our users to always have the most up to date and secure version of Java will be to get it directly from Oracle.”
Astute observers will notice that the phrasing of that statement echoes another recent Apple announcement, this one regarding Adobe’s Flash technology. Eyebrows were raised last month when it was discovered that Apple’s new MacBook Air shipped without Adobe’s Flash Player Web plug-in installed by default. When quizzed on the topic, Apple spokesperson Bill Evans told Daring Fireball’s John Gruber:
We’re happy to continue to support Flash on the Mac, and the best way for users to always have the most up to date and secure version is to download it directly from Adobe. [emphasis added]
That’s far too close to be coincidence. Certainly, Java and Flash have some commonalities, in that they’re both cross-platform technologies, but the more important factor here is that they’re software that’s created and maintained by companies that aren’t Apple. Some might be quick to chalk this up to Apple playing its usual game of “my way or the highway,” but it’s important to note that Apple’s not forbidding either Java or Flash from running on OS X—it’s just absolving itself of responsibility for including—and more importantly updating—those software packages in the OS itself.
It’s not hard to see why, either. Both Flash and Java are common vectors for security exploits—the recent 10.6.5 update patched more than 50 vulnerabilities related to Flash. And Apple has been dinged in the past for lagging behind on rolling out Java updates. Apple seems to be hoping that it’s progressing to a point where Flash and Java aren’t critical technologies for most Mac users—and that users who do need those technologies will be more than capable of downloading and installing them themselves.
Like many of Apple’s moves, this is certainly about control, but it’s also about resources. Putting the responsibility for Flash and Java onto Adobe and Oracle means two fewer external dependencies for Apple to spend its time worrying about.