In its moves linking Java to the specific features of a single operating system, Microsoft isn't stopping at its own OS. Redmond says it will also help Java developers tap the native capabilities of the Mac OS - and Apple is right there with them.
Microsoft said today that in addition to making Java a more powerful tool for writing native Windows applications, it will work with Apple to make the language more powerful for writing native Macintosh applications as well.
Microsoft said the collaboration is an extension of the companies' partnership announced last August, when Microsoft bought $150 million worth of Apple stock.
"How strong is $150 million?" quipped Zona Research analyst Ron Rappaport. "This is one of the fruits of Microsoft's investment in Apple."
One salient aspect of the August alliance is coming clear now, as Apple moves away from its 100-percent Java commitment and towards collaboration with Microsoft on Java technologies, like the Mac's Java Virtual Machine (JVM). In August, the companies also agreed to cross-license each other's patented technologies to further cooperate on then-unspecified efforts. It seems clear that Microsoft had this component of its Java strategy in mind.
"Any effort to make Java less cross-platform in nature will benefit Microsoft's Java strategy," Rappaport said. "The more platform-specific Java applications you have that are not Windows-branded, the easier it becomes for Microsoft to do what it's been doing - drive a stake through Java's cross-platform message."
Details of the arrangement are sketchy, but Microsoft said the two companies will unify their respective Macintosh Java technologies. Specifically, that refers to Apple's JVM, which will be merged with Microsoft's own to create a single Mac JVM.
But more significantly, Microsoft said it will provide developers with a version of J/Direct to build native Mac applications using the Java language.
Like its new partner, the move also shows Apple trying to woo the growing number of Java developers into its Mac OS camp.
"Is Microsoft the only vendor pursuing platform-specific Java? The answer is clearly no," said Rappaport.
Aiming at the Mac as well as Windows operating system bolsters the view that Microsoft's new initiative represents a way to push Java development away from Sun's cross-platform vision - and toward individual operating systems.
Rappaport sees the arrangement as a chance for Apple, like Microsoft, to tap into the growing pool of Java developers and bring some momentum to applications written for Apple's wounded operating system. "This is an opportunity for Apple to increase development of the Mac OS platform," he said.
Microsoft already detailed its plans to empower Java-based applications with the features and functions of its own Windows operating system.
But since Java is meant to be platform-independent, such OS-specific behavior swerves Java onto a new course as a platform-specific programming environment - one more way to write Windows, and soon, Mac applications.
Java's weaknesses so far in running applications over its Java Virtual Machine have provided Microsoft with the means of exploiting those problems to its own ends. The company is able to argue - and has as it lays out its new strategy - that vendors writing for specific platforms would like to develop in Java, given its elegant programming environment. But to write stable, business-critical applications, Microsoft says, they need to be able to easily call on lower-level operating system functions - and Microsoft's new Windows Foundation Classes let them do just that.
Presumably, a similar set of Macintosh classes will do the same for that platform, although no specifics have been announced.
But today's developments are one more indication to Zona's Rappaport that at least half of Java's mission - platform independence - continues to lose steam.
"Is the cross-platform flag on the industry flagpole flying at half-mast?" he asks. "Increasingly so."