Forget open source: Sun forked Java!
With the release of JRE 1.5, Sun changed the class file format, making it incompatible with earlier Virtual Machines.
Given the enormous current installed Java user base, this was nothing short of foolhardy. Fortunately, the 1.5 JRE can still run code in the original class file format.
I expect if Sun does not fix this by 1.6, there will be a schism; between the "compatible with all JREs" original-format developers, and the "compatible with new JREs" modified-format developers.