自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

搞定JDK5.0源代碼許可

開發(fā) 后端
JDK5.0源代碼許可對于JDK5.0源代碼研究有著很重要的意義,那么如何獲得JDK5.0源代碼許可呢?本文將會給你進行介紹。

針對JDK5.0源代碼許可,Sun 最近通過 Sun 社團源代碼許可(Community Source License,SCSL)和 Java 研究許可(Java Research License,JRL)發(fā)布了 JDK 5.0 的源代碼。這個月,Tiger 的專欄作家 John Zukowski 從新發(fā)布的細節(jié)中抽空出來,概述了許可的條款以及為開發(fā)人員提供了哪些源代碼訪問。他還簡要介紹了一下 J2SE 6.0 發(fā)行版 Mustang 令人驚奇的早期訪問。

Sun 發(fā)布 JDK5.0源代碼許可的決定,除了提供對公共類的訪問之外,還提供了對非公共類的訪問,這給了開發(fā)人員更深入了解最新發(fā)行版幕后內容的機會 —— 前提是您不介意遵守許可條款。我不會卷入所謂“Sun 是不是應該把 Java 平臺開源”的爭論,而是向您展示如何得到源代碼并討論兩個許可選項:Sun 社團源代碼許可(SCSL)和 Java 研究許可(JRL)。我還會簡要地討論 6.0 Mustang 二進制和源碼的早期訪問快照版本。

標準源代碼下載

Java 平臺公共 API 的源代碼和 Javadoc 中提及的所有類都屬于標準 JDK 交付的一部分,您可以訪問它們。為訪問這些源文件,您需要將它們與 JDK 下載安裝在一起。如果給出大小(18 MB),那么 JDK 下載是可選的,所以您必須確保在下載的時候選擇了該下載。安裝之后,只需把文件解壓到子目錄中即可,如下段代碼中演示的那樣。

返回 1.4 默認的 Steel 主題

  1. cd c:\jdk1.5.0 
  2. mkdir src  
  3. cd src  
  4. jar xvf ..\src.zip 

現(xiàn)在,如果您在開發(fā)代碼的時候遇到問題,得到意外的堆棧轉儲,您就可以查看系統(tǒng)類的源代碼,看看是為什么。例如,用 null 參數(shù)調用 StringBuffer 構造函數(shù)是不對的。為什么呢?查看源代碼,就了解到,構造函數(shù)試圖取得 string 的長度。雖然在 Javadoc 中有文檔說明, StringBuffer 構造失敗會拋出 NullPointerException 異常,但是查看源代碼可以讓您知道 為什么 會失敗。因為您不能對 null 對象指針調用 length 方法。

注意: 源文件保存為具有 Unix 換行符,如果用記事本(Notepad)這樣的編輯器查看源代碼,閱讀起來會很困難,因為文件中沒有回車符。如果您想轉換這些文件,那么 JavaWorld 的 Java Tip 64仍然會有用。

JDK 5.0 源代碼包
 
JDK 沒有提供平臺的全部源代碼。提供了 java.* 和 javax.* 包中的公共類,但是沒有提供 sun.* 或虛擬機中的公共類。JDK 5.0 源代碼包就是彌補這個不足的。如果您能夠遵守其中任何一個許可的條款(稍后介紹),那么您就可以訪問平臺(允許 Sun 公開的平臺)的完整源代碼。這兩個許可許可了一些東西,但是它們也有自己的再發(fā)布限制。您可以從 Java 2 Platform Standard Edition 5.0 頁面訪問源代碼(請參閱 參考資料)。只要單擊您要遵守的許可的下載鏈接,閱讀并接受許可條款,然后單擊第一個下載鏈接,就會顯示組的文件列表。這時,有兩個下載鏈接,一個是 55 MB 的 zip 格式的源代碼文件,另一個是安全性文件(例如加密供應者),只有不到 1 MB。下載源文件,解壓后就可以研究了。還有另外一個 2 MB 的二進制文件下載,它包括共享庫、字體和圖片。有它更好,沒有也可以。

Sun 社團源代碼許可

最新的 J2SE 發(fā)行版中引入的 Sun 社團源代碼許可(Sun Community Source License,SCSL),針對研究社團做了少量修改。該許可在 5.0 中基本上沒有變化。

SCSL 不是一個開源許可,但是允許您自由地訪問源代碼,前提是您可以接受許可(而且在授權國家居?。?。但是,根據(jù)您處理許可的方式,您可能要付費。雖然不是每個人都同意該許可,而且我也不想對它發(fā)表評論,Sun 的立場是它可以防止平臺標準分叉。無論如何,這個許可確實讓您可以訪問整個平臺,這比起不能訪問來說當然有優(yōu)勢。

那么您到底可以訪問到JDK5.0源代碼呢?對于入門者來說,您可以訪問系統(tǒng)資源,例如線程調度器和內存模型。如果您不喜歡現(xiàn)有的模型,那么您可以創(chuàng)建自己的。您可以測試您的假設,看看您的模型是否更好。當然,這可能就進入了 Java 研究許可(JRL)的領域。如果您想修補的 bug 已經(jīng)等候了很久,但是在 Sun 的優(yōu)先級列表中沒有排在前面,那么您可以自己修補它,然后把補丁發(fā)回 Sun。您想自己留著補???當然可以,但是重新發(fā)布的修復了這個 bug 的平臺會有一些限制。這時就需要許可費和兼容性測試套件了。想要創(chuàng)建一個干凈版本的虛擬機或者庫?那么背道而馳,不要贊成這個許可(即 JRL)。

Java 研究許可

Java 研究許可(Java Research License,JRL)是 Java 源代碼版本許可方案的新成員。在研究社團對 SCSI 中原來的研究部分提出諸多抱怨之后,專門針對大學和研究社團創(chuàng)建了 JRL。如果您是大學或者研究機構的老師或研究人員,那么下載具有 JRL 的源代碼是比較合適的。許可中的研究使用權力部分規(guī)定,您可以用這項技術與其他也獲得許可的人進行研究,修改代碼,并發(fā)表您的研究。

但是,有一些灰色區(qū)域。許可說,您可以與其他人獲得許可的人共享源代碼;許可還說,如果不是主要的部分,您還可以分發(fā)對象代碼以及發(fā)布源代碼的摘錄?,F(xiàn)在,如果您計劃教授您的研究,而您的學生要為課程付費(也就是說成為了商業(yè)行為,而不僅僅是研究目的),那么您就違反了許可。如果您想要根據(jù)通過 JRL 訪問搜索到的材料來教學,那么建議您最好先咨詢一下法律顧問。

Mustang

Sun 最近帶給我們的一個驚奇就是對 J2SE 6.0(代號為 Mustang)的早期訪問。(為了滿足您的好奇心,透露一下 7.0 的代號為 Dolphin。)J2SE 的下一版本預計在 2006 年春發(fā)布,在 JRL 許可之下,您既可以訪問該版本的源代碼,也可以訪問它的二進制代碼。該下載中缺少 Javadoc,您必須在構建 JDK 之后自行構建它。

值得花時間現(xiàn)在研究 Mustang 嗎?這取決于您的意向。從純研究的角度來說,這次發(fā)布的版本當然是份大禮。如果您需要計劃公司未來的產(chǎn)品戰(zhàn)略,而許可條款與您的意向又不沖突,那么還是值得調查一下的。對于本欄目的普通讀者來說,如果您想在事情完全準備好之前了解它,而且不介意運行一些還沒有經(jīng)過完全測試,可能還不是全功能的代碼,那么您就下載研究它吧。反正我知道我是準備進行研究的。

結束語

對于JDK5.0源代碼許可而言,如果您居住在一個已授權可以接收源代碼的國家,那么現(xiàn)在得到 JDK 源代碼比平臺以前的發(fā)行版容易得多了。過去,您必須打印協(xié)議,物理地簽署協(xié)議,并傳真回 Sun。之后您才能訪問一個具有源代碼下載權的私有 Web 站點?,F(xiàn)在,只需要用鼠標指向并單擊,單擊,單擊,就能得到源代碼。只要許可條款與您的意向不沖突,而且您是屬于比較好奇的那類人,那么源代碼就是值得研究的好東西,可以學習更多有關 Java 工作原理的內容。對于 Mustang 來說,看看這個平臺未來要走向何方會更有趣。

【編輯推薦】

  1. JDK1.5中新的語言特征淺析
  2. 在JDK7 b50中將實現(xiàn)正則表達式命名捕獲組
  3. JDK日志框架介紹及其主要功能淺析
  4. JDK日志框架之自定義日志Formatter
  5. JDK日志框架之實例結合STAF淺析
責任編輯:仲衡 來源: CSDN博客
相關推薦

2009-07-09 11:02:37

JDK5.0內置工具

2009-07-08 17:33:46

JDK5.0內置工具

2009-07-07 17:34:15

collectionJDK5.0

2014-11-06 09:31:20

Android 5.0Google

2011-07-28 09:36:14

VMware vSphvmware

2009-04-17 09:20:34

微軟CCI開源許可

2021-04-08 10:10:46

JavaSimpleDateFList接口

2017-11-29 08:59:35

Facebook谷歌IBM

2021-07-06 05:04:50

MDK源代碼文件

2021-12-30 12:30:01

Java注解編譯器

2021-01-27 10:00:10

SSPL開源許可證OSI

2021-04-13 08:25:12

測試開發(fā)Java注解Spring

2023-11-27 09:35:59

開源許可證

2022-03-30 15:33:02

甲骨文JDK軟件許可

2013-12-02 14:48:17

開源許可協(xié)議開放代碼

2009-03-20 13:40:15

JDK線程并發(fā)

2020-11-13 13:05:27

Java開發(fā)代碼

2013-05-16 09:36:07

Java甲骨文Java版本

2009-04-03 08:28:39

2011-02-23 14:54:58

FileZilla
點贊
收藏

51CTO技術棧公眾號