Apache, Oracle, 以及JCK

洛欣發表於2010-06-30
Java世界裡的人差不多都知道了Apache和Sun之間出現了裂縫。Apache長久以來一直要求廢除使用領域限制條文。很多人都認為FOU條款實際上和JCP的章程是有衝突的。我不是個律師,所以我不想對此隨意發表評論。

  這些條款是使Apache Harmony專案不能被認證為Java標準實現,並且,至少是部分上導致Dalvik虛擬機器的出現,Dalvik是Android應用程式的執行平臺。最近在The Register上有篇文章 指出Apache和Oracle之間的會談已經破裂,這讓所有使用Java的人都很擔心。 

  Java的成就和價值就在於它的平臺可移植性。 除了一小部分特殊情況外,Java編寫的應用程式可以通過虛擬機器在任何平臺上執行。甚至那些很特殊的案例中,只要你的程式碼編寫的正確,也可以順利的移植成功。隨著“非電腦”計算裝置(智慧手機、掌上電腦等)的興起流行,Android成為業內一個重要的技術。不管Google是否有意願申請將Dalvik認證為標準JVM,理論上就沒有這種可能性。JavaJCK就不會允許。這種形勢對Java是個很大的威脅。

  FOU限制條款的出現,部分上,是為了保護Sun的JavaME業務。因為這是個巨大的市場,這在商業上是有意義的。以前這些移動裝置不能支援一個全功能的JVM, JME因此就顯的很有價值了。但如今情況是完全變了。我個人認為JME已經逐漸被淘汰了。今後Android將成為一個重要的角色。 而且它不是標準Java的。曾經,我不止一次的幫別人除錯一些有問題的“Java”程式碼,卻發現我給出的建議沒有起作用,原因是,我吃驚的發現這些程式是執行在Android裝置上的。

  移動市場已經很大了,而且會變的更大。Oracle沒有任何理由要保留FOU條款。 Oracle並不像Sun那樣需要JME市場。開放限制允許Dalvik和其他產品認證為Java認證實現將會推動Java融入更大的市場。如果Oracle拒絕這樣做,將會最終把移動市場拱手相讓與他人。

  我一直贊成Apache的觀點,認為FOU是不公平的,它與JCP協議的精神(即使是從字面上講)是相牴觸的。Oracle應該廢除這些條款,就像當初他要求Sun一樣。 需要JME的那些廠商仍然會為它付費。但是,慢慢的,JME會越來越不符合潮流。我沒有發現任何要保護它的理由,也沒有發現任何理由不去讓Java更多的參與到大市場中。

  更新:是的,在某些方面,我把Harmony和Dalvik混為一談。 它們都是這個重大問題的典型代表。FOU的問題和在移動裝置上JVM的生存能力的問題是關鍵問題。 請不要在技術細節上跟我較真兒。請原諒我給你們帶來了一些混亂。

  免責宣告:本文純屬個人觀點。我不為任何一方說話,也不是我作為Oracle的僱員有內部訊息。 我只是以一個Java愛好者的身份發表我的個人觀點。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22785983/viewspace-666692/,如需轉載,請註明出處,否則將追究法律責任。

相關文章