å¨æ¬æä¸ï¼æ们å°æ¢è®¨ Oracle Java Development Kit å OpenJDK ä¹é´çå·®å¼å¹¶è¿è¡æ¯è¾ã
Oracle JDK
Oracle JDKç±Oracleå ¬å¸å¼åï¼è¯¥å ¬å¸æ¯Sun许å¯è¯ï¼åºäºJavaæ åçè§èå®ç°ãå®ä»¥äºè¿å¶äº§åçå½¢å¼åå¸ãå®æ¯æå¤ç§æä½ç³»ç»ï¼å¦Windowsï¼Linuxï¼Solarisï¼MacOSçãå®æ¯æä¸åçå¹³å°ï¼å¦Intel 32ä½å64ä½æ¶æï¼ARMæ¶æåSPARCãå®å®å ¨åºäºJavaç¼ç¨è¯è¨ãä¹åï¼è¯¥è®¸å¯è¯å®£å¸å°æ ¹æ®GPLï¼éç¨å ¬å ±è®¸å¯è¯ï¼è®¸å¯è¯åå¸ãOracle JDKå å«è®¸å¤ç»ä»¶ä½ä¸ºåºå½¢å¼çç¼ç¨å·¥å ·éåã
æ们æ¥ççJava SEçåå²ï¼
注æï¼ä¸åæ¯ææä½çæ¬ã
æ们å¯ä»¥çå°Java SEç主è¦çæ¬å¤§çº¦æ¯ä¸¤å¹´åå¸ä¸æ¬¡ï¼ç´å°Java SE 7.ä»Java SE 6å¼å§è±äºäºå¹´æ¶é´ï¼ä¹ååè±äºä¸å¹´æ¶é´å°è¾¾Java SE 8ã
èªJava SE 10以æ¥ï¼æ们å¯ä»¥æå¾ æ¯å 个æåå¸ä¸æ¬¡æ°çæ¬ãä½æ¯ï¼å¹¶éææçæ¬é½æ¯é¿ææ¯æï¼LTSï¼çæ¬ãç±äºOracleçåå¸è®¡åï¼LTS产ååå¸ä» æ¯ä¸å¹´åå¸ä¸æ¬¡ã
OpenJDK
OpenJDKæ¯Java SEå¹³å°ççå¼æºåå è´¹å®ç°ï¼å®æ¯Sun Corporationï¼ç°å¨çOracle Corporationï¼äº2006å¹´å¼å§çå¼åç»æãå®æ¯æ ¹æ®GNU GPL许å¯è¯ææçãå®æåäº2007å¹´åå¸ãå®ç±Oracle Corporationï¼Red Hatï¼IBMï¼Apple Inc.ï¼OpenJDKåJava Communityçå¼åãå®æ¯ä½¿ç¨C ++åJavaç¼ç¨è¯è¨ç¼åçãå®æ¯æä¸åçæä½ç³»ç»ï¼å¦FreeBSDï¼Linuxï¼Microsoft Windowsï¼Mac OS X. OpenJDKæ¯Java SE Platform Editionçå®æ¹åèå®ç°ã
ç°å¨è®©æ们ççOpenJDKçæ¬ï¼
Oracleä¸OpenJDKä¹é´çæ¯è¾ï¼ä¿¡æ¯å¾è¡¨ï¼
Oracleä¸OpenJDKä¹é´ç主è¦åºå«
Oracleä¸OpenJDKé½æ¯å¸åºä¸ççé¨éæ©; 让æ们讨论ä¸ä¸OracleJDKä¸OpenJDKä¹é´çä¸äºä¸»è¦å·®å¼ï¼
Oracle JDKçæ¬å°æ¯ä¸å¹´åå¸ä¸æ¬¡ï¼èOpenJDKçæ¬æ¯ä¸ä¸ªæåå¸ä¸æ¬¡ã
Oracle JDKå°æ´å¤å°å ³æ³¨ç¨³å®æ§ï¼å®éè§æ´å¤çä¼ä¸çº§ç¨æ·ï¼èOpenJDKç»å¸¸åå¸ä»¥æ¯æå ¶ä»æ§è½ï¼è¿å¯è½ä¼å¯¼è´ä¸ç¨³å®ã
Oracle JDKæ¯æé¿æåå¸çæ´æ¹ï¼èOpen JDKä» æ¯æ计ååå®æä¸ä¸ä¸ªåè¡çã
Oracle JDKæ ¹æ®äºè¿å¶ä»£ç 许å¯åè®®è·å¾è®¸å¯ï¼èOpenJDKæ ¹æ®GPL v2许å¯è·å¾è®¸å¯ã 使ç¨Oracleå¹³å°æ¶ä¼äº§çä¸äºè®¸å¯å½±åãå¦Oracle 宣å¸ç é£æ ·ï¼å¨æ²¡æåä¸è®¸å¯çæ åµä¸ï¼å¨2019å¹´1æä¹ååå¸çOracle Java SE 8çå ¬å¼æ´æ°å°æ æ³ç¨äºåä¸ï¼åä¸æç产ç¨éãä½æ¯ï¼OpenJDKæ¯å®å ¨å¼æºçï¼å¯ä»¥èªç±ä½¿ç¨ã
Oracle JDKçæ建è¿ç¨åºäºOpenJDKï¼å æ¤OpenJDKä¸Oracle JDKä¹é´æ²¡æææ¯å·®å¼ã
é¡¶çº§å ¬å¸æ£å¨ä½¿ç¨Oracle JDKï¼ä¾å¦Android Studioï¼MinecraftåIntelliJ IDEAå¼åå·¥å ·ï¼å ¶ä¸Open JDKä¸å¤ªå欢è¿ã
Oracle JDKå ·æFlight Recorderï¼Java Mission ControlåApplication Class-Data Sharingåè½ï¼Open JDKå ·æFont Rendereråè½ï¼è¿æ¯OpenJDKä¸Oracle JDKä¹é´çæ¾çå·®å¼ã
Oracle JDKå ·æè¯å¥½çGCé项åæ´å¥½ç渲æå¨ï¼èOpenJDKå ·ææ´å°çGCé项ï¼å¹¶ä¸ç±äºå ¶å å«èªå·±ç渲æå¨çåå¸ï¼å æ¤å ·æè¾æ ¢çå¾å½¢æ¸²æå¨é项ã
å¨ååºæ§åJVMæ§è½æ¹é¢ï¼Oracle JDKä¸OpenJDKç¸æ¯æä¾äºæ´å¥½çæ§è½ã
ä¸OpenJDKç¸æ¯ï¼Oracle JDKçå¼æºç¤¾åºè¾å°ï¼OpenJDK社åºç¨æ·ç表ç°ä¼äºOracle JDKåå¸çåè½ï¼ä»¥æé«æ§è½ã
å¦æ使ç¨Oracle JDKä¼äº§ç许å¯å½±åï¼èOpenJDK没æè¿æ ·çé®é¢ï¼å¹¶ä¸å¯ä»¥ä»¥ä»»ä½æ¹å¼ä½¿ç¨ï¼ä»¥æ»¡è¶³å®å ¨å¼æºåå 费使ç¨ã
Oracle JDKå¨è¿è¡JDKæ¶ä¸ä¼äº§çä»»ä½é®é¢ï¼èOpenJDKå¨ä¸ºæäºç¨æ·è¿è¡JDKæ¶ä¼äº§çä¸äºé®é¢ã
æ ¹æ®ä½¿ç¨æ¹ç使ç¨å许å¯åè®®ï¼ç°æåºç¨ç¨åºå¯ä»¥ä»Oracle JDKè¿ç§»å°Open JDKï¼åä¹äº¦ç¶ã
Oracle JDKå°ä»å ¶10.0.Xçæ¬å°æ¶è´¹ï¼ç¨æ·å¿ é¡»ä»è´¹æå¿ é¡»ä¾èµOpenJDKæè½ä½¿ç¨å ¶å è´¹çæ¬ã
Oracle JDKä¸ä¼ä¸ºå³å°åå¸ççæ¬æä¾é¿ææ¯æï¼ç¨æ·æ¯æ¬¡é½å¿ é¡»éè¿æ´æ°å°ææ°çæ¬è·å¾æ¯ææ¥è·åææ°çæ¬ã
Oracle JDK以åç1.0ç以åççæ¬æ¯ç±Sunå¼åçï¼åæ¥è¢«Oracleæ¶è´å¹¶ä¸ºå ¶ä»çæ¬ç»´æ¤ï¼èOpenJDKæååªåºäºJava SDKæJDKçæ¬7ã
Oracle JDKåå¸æ¶å¤§å¤æ°åè½é½æ¯å¼æºçï¼å ¶ä¸ä¸äºåè½å äºå¼æºï¼å¹¶ä¸æ ¹æ®Sunç许å¯ææï¼èOpenJDKåå¸äºææåè½ï¼å¦å¼æºåå è´¹ã
Oracle JDKå®å ¨ç±Oracleå ¬å¸å¼åï¼èOpen JDK项ç®ç±IBMï¼Appleï¼SAP AGï¼Redhatçé¡¶çº§å ¬å¸å å ¥ååä½ã
Oracleä¸OpenJDKæ¯è¾è¡¨
以ä¸æ¯Oracleä¸OpenJDKä¹é´æéè¦çæ¯è¾ï¼
Oracle JDKå¯ç¨äºå¼åJava Webåºç¨ç¨åºï¼ç¬ç«åºç¨ç¨åºä»¥å许å¤å ¶ä»å¾å½¢ç¨æ·çé¢ä»¥åå ¶ä»å¼åå·¥å ·ãOracle JDKæ§è¡çæææä½æä»»å¡ä¹å¯ä»¥ç±OpenJDKæ§è¡ï¼ä½åªæOracleä¸OpenJDKä¹é´çåºå«å¨äºOpen JDKå¨ç°æOracle JDKä¹ä¸ç许å¯åå ¶ä»å·¥å ·éæåå®ç°ã使ç¨OpenJDKçä¼ç¹æ¯å¯ä»¥æ ¹æ®åºç¨ç¨åºçè¦æ±ä¿®æ¹æ§è½ï¼å¯ä¼¸ç¼©æ§åå®ç°ï¼ä»¥æ ¹æ®éè¦è°æ´Javaèææºã