Mark Reinhold先生于2012年7月宣布 ,他們計劃從Java 8撤回Jigsaw項目 ,因為Jigsaw計劃于2013年9月(從現在開始一年)推遲其發布。 這個日期是眾所周知的,因為Oracle已決定實施Java的兩年路線圖計劃,因此2013年9月實際上是Java 7發布之后的兩年。
根據拼圖的網站…
“該項目的目標是為Java SE平臺設計和實現一個標準模塊系統,并將該系統應用于平臺本身和JDK。 該項目的最初目標是設計和實現一個模塊系統,其重點僅在于模塊化JDK的目標,并將該系統應用于JDK本身。 對Java平臺真正標準模塊系統的需求不斷增長,促使項目范圍擴大,以產生一個模塊系統,該模塊系統最終將成為Java SE平臺的JCP批準部分,并滿足ME和EE平臺的需求。 。”
他們還說:
“豎鋸最初是為Java 7設計的,但后來推遲到Java8。”
現在他們想將其推遲到Java 9中:-(有關更多決策的更多詳細信息,請參見Reinhold博客上的“問答”。您可以閱讀并關注那里的討論。這是我的看法:
沒有Jigsaw,我相信將Java無處不在非常困難。 沒有Jigsaw,在智能手機和平板電腦時代,多平臺的想法就僅限于服務器。 拼圖可能是“火車上的遲來”,但它使Java遲到了整個平臺生態系統

觀察市場,我們可以看到開發正變得依賴于平臺(iOS,Android等)。只有Java可以克服這種趨勢,因為它具有在多平臺實現方面的豐富經驗,現在是時候了! 否則,在3或4年內,設備上將沒有Java,而開發社區將擁有足夠的知識來使用它。 因此,Java基本上將是服務器端技術。
我的預測背后的原因如下:移動設備的資源有限,模塊化的JVM將允許考慮每個設備的約束來創建定制的JVM。 我讓那些設備制造商大吃一驚:“我不會在我的產品中分發可能對用戶體驗產生負面影響的產品”。 這就是蘋果公司(至少是公眾的一種說法)避免為iOS瀏覽器分發Flash插件的論點。 可能正因為如此,Adobe最終放棄了在移動設備上使用Flash。 模塊化JVM將簡化與許多設備播放器的許多Oracle協商。 蘋果將??Java作為iPad和iPhone應用程序的語言包含進來是合理的。 谷歌最終將JVM嵌入到Android中,以利用新的Java語言功能更快地發展,而只忙于將JVM擴展到特定Android功能的模塊。 甚至有可能使諾基亞免于破產:D
您可能想知道Apple和Google是否會采用JVM作為標準的運行時平臺。 您聽說過機會成本嗎? 它指出,我們當前的選擇和活動實際上正在阻礙其他可能的選擇和活動。 棘手的部分是選擇成本最低或利潤最高的機會。 話雖如此,我們可以看到考慮Java不是一種選擇的情況,因為在那些公司做出決定時Java不是模塊化的。 如果Java是模塊化的并且蘋果采用了Java,那么iOS平臺的應用程序至少是Android的三倍。 谷歌的戰略是“ Java”追趕蘋果。 只有Java才能允許Google在這么短的時間內做到這一點。 因此,忽略Java并非那么簡單。
現在,甲骨文與谷歌對決:當然,推動Java向前發展的努力應該在經濟上可行,而要使用Java,谷歌必須花一些錢。 不幸的是,Oracle和Google使用不同的貨幣。 甲骨文考慮許可問題,而谷歌考慮廣告問題。 這些貨幣不兼容,很難轉換,因為雖然許可證是成本,但廣告是利潤。 因此,甲骨文永遠不會達成增加谷歌成本的協議,但是有可能達成降低谷歌利潤的協議。 換句話說,為了使Java適用于Android,Oracle可以從通過Java應用程序銷售的廣告中獲得Google一定比例的利潤。 Google與Yahoo,AOL等許多公司進行了這種交易。 為什么不使用Oracle?
如果Oracle沒有提供JDK團隊在Java 8中實現Jigsaw所需的全部資源,那么Oracle很快將完全退出普及游戲。 如果不將JDK分為可管理和高效的部分,Oracle將沒有理由說服業界相信Java是長遠之計。
在決定放棄拼圖之前,我請甲骨文考慮一下后果! 他們必須忽略固定發布路線圖,并接受任務的難度。 只要Jigsaw即將推出Java 8,我們就可以對Java 7感到滿意(無論如何它并未得到廣泛采用)。這個固定的發布周期實際上可以在Java 8之后出現。
我想錯了,對甲骨文正式宣布在下一個JavaOne中對Apple和Android設備上的JavaFX的絕對支持感到驚訝;-)但是,我認為可能性很小:-(
參考: Hildeberto博客博客中來自JCG合作伙伴 Hildeberto Mendonca 的延期項目拼圖的后果 。
翻譯自: https://www.javacodegeeks.com/2012/09/project-jigsaw-consequences-of-deferring.html