甲骨文限制Java9到Java8的向后兼容性
在開發者們正興奮著準備把Java8工具包轉向Java9的時候, 甲骨文的首席執行官提出了要限制兩個版本的兼容性。
在周一下午OpenJDK的郵件列表中的一封郵件中,甲骨文的Java平臺的首席架構師Mark Reinhold指出會對JDK8增加更多變化(大概在2014年初),也就意味著JDK9這片“森林”,這一個目錄或者一組目錄很快就會到來。所以現在開發者們要開始思考如何應對這兩個版本的變化。
一般來說,他們會先在新的開發版本上做些改變再加入到舊版本中。但是,發布這種新的JDK8的準備時期做了比新版本更多系統集成測試,這特性的發布并沒有太大的意義。因為新版本更會先發生變化,所以會拖慢最終版本的發布。
在這之前,到JDK7的時候,都還沒有處理并行變化的策略。當Sun或者Oracle團隊里面的成員對最終版本實行半自動的合并直到把這種合并變的不切實 際,開發者第一時間就是對將要發布的版本作出改進。開發者們會被要求同時對這兩個版本作出改進。那么調試的數據庫查詢會被用來幫助對新版本作出正確的改 進。
Reinhold還表示,“這種方法一直都不是運行的很好,無論半自動的合并是否還在進行它都需要數百名開發者對新版本的每個階段進行監督和貢獻。一旦這些合并停止了,他們就要立刻改變他們的工作集成方式。”
為了簡化最終版本的過程,Reinhold指出JDK9的開發森林會從特定的JDK8構造中開始初始化。“在那構造完成之后,這兩個版本就不再允許合并。開發者對JDK8作出改變的時候也要同時對JDK9作出改變,如果那個變化適用于JDK9.”
Reinhold希望這些改變能整頓好整個開發的流程。“我認為這里面唯一的缺點就是它無法從JDK9重構建JDK8 GA,因為它是從JDK8 GA之前的GA中分離出來的。如果能做到這一點,我感覺是很方便很酷的,這比技術更具有審美價值。這種狀況跟你不能從JDK8中構造一個JDK7的新版本 是一樣的道理。”
基于Java的標準版本8,為了能更方便的在多核處理器上編碼,JDK 8被設置為支持Lambda項目。預覽的構建已經可以使用了。隨后的JDK 9版本,預計在2016年初發布,將會增加項目拼圖和Java模塊化功能的特性。
來自: via infoworld.com