OpenJDK | |
---|---|
Tyyppi | Java-kehityspaketti |
Kehittäjä | Oracle [1] |
Sisään kirjoitettu | Java [2] |
Käyttöjärjestelmä | GNU/Linux [3] , BSD [3] , Microsoft Windows [3] , macOS [3] ja Unix-tyyppinen käyttöjärjestelmä |
Ensimmäinen painos | 8. toukokuuta 2007 |
Laitteistoalusta | Java-virtuaalikone |
uusin versio | 18.0.2 ( 19. heinäkuuta 2022 ) |
Lisenssi | GNU GPL 2 , GPL-linkityspoikkeus [d] [4] ja yleinen sallittu lisenssi [d] [5] |
Verkkosivusto | openjdk.java.net _ |
OpenJDK on projekti, jolla luodaan täysin yhteentoimiva Java-kehityspaketti , joka koostuu kokonaan ilmaisesta ja avoimesta lähdekoodista.
Sun ilmoitti JavaOne 2006 :ssa , että Java olisi ilmainen ohjelmisto [6] [7] , ja 25. lokakuuta 2006 Oracle OpenWorld -konferenssissa Jonathan Schwartz sanoi, että yritys aikoo avata Java-ytimen lähdekoodin 30-60 päivän kuluessa.
Sun julkaisi HotSpot - virtuaalikoneen ja Java-kääntäjän GPL :n alaisena 13. marraskuuta 2006, ja lupasi, että muut JDK-komponentit (mukaan lukien Java Runtime Environment ) julkaistaan GNU GPL :n alaisina maaliskuuhun 2007 asti "poikkeuksena joistakin komponenteista, joita Sunilla ei ole oikeutta julkaista lähdekoodina GPL:n alaisena” [8] . Richard Stallmanin mukaan tämän olisi pitänyt lopettaa Java-integraattoreiden ja Java-ohjelmoijien "Java-ansa" [9] , ja Mark Shuttleworth kutsui alkuperäistä lehdistötiedotetta "todelliseksi virstanpylvääksi vapaiden ohjelmistojen yhteisölle " [10] .
Lupauksen jälkeen julkaista lähes kokonaan ilmaiseen ja avoimeen lähdekoodiin perustuva Java Development Kit (JDK) vuoden 2007 ensimmäisellä puoliskolla Sun julkaisi Java-luokkakirjaston täyden lähdekoodin GPL:n alaisena 8. toukokuuta 2007, paitsi joidenkin kolmannen osapuolen rajoittamien osien osalta ja pois lukien GPL:n ehdot [11] . Luettelossa kuormitettujen osien joukossa oli useita tärkeitä Java - komponentteja graafiselle käyttöliittymälle . Sun on ilmoittanut, että se aikoo korvata jäljellä olevat komponentit vaihtoehtoisilla toteutuksilla ja tehdä luokkakirjastosta täysin ilmaisen [12] .
5. marraskuuta 2007 Red Hat teki sopimuksen Sunin kanssa ja allekirjoitti laajan projektin avustajasopimuksen (joka kattaa Red Hat -kehittäjien osallistumisen kaikkiin Sunin hallinnoimiin ilmaisiin ja avoimen lähdekoodin projekteihin) ja OpenJDK-yhteisölisenssin (joka antaa yritykselle pääsy testausohjelmistopaketteihin, jotka määrittävät yhteensopivuuden, onko OpenJDK-projekti Java SE -spesifikaatioiden mukainen 6) [13] .
Myös marraskuussa 2007 OpenJDK:ssa luotiin Porters Group [14] auttamaan OpenJDK:n siirtämisessä (sopeuttamisessa) erilaisiin prosessoriarkkitehtuureihin ja käyttöjärjestelmiin . Kurt Millerin ja Greg Lewisin johtama BSD Porting Project ja Landon Fullerin johtama Mac OS X -portointiprojekti (myös BSD-ytimeen perustuva) ovat olleet vahvasti kiinnostuneita OpenJDK:n sisällyttämisestä Porters Groupin kautta.
Joulukuussa 2007 Sun siirsi OpenJDK:n versionhallinnan TeamWaresta Mercurialiin osana siirtymistä avoimen lähdekoodin kehittämiseen [15] [16] .
OpenJDK:ssa on suhteellisen tiukat menettelyt koodimuutosten hyväksymiseksi: kahden Sunin insinöörin (myöhemmin Oracle ) on tarkistettava jokainen ehdotettu muutos , ja avustajan on ensin allekirjoitettava erityinen "avustajasopimus" [17] , mieluiten JTreg-testi [18] . suoritettava myös osoittaen, että virhe on korjattu. Aluksi korjaustiedostojen hyväksymisprosessi ulkopuolelta oli melko hidasta [19] , ja muutokset koodeihin tehtiin syyskuuhun 2008 saakka vain suoraan Sunin insinöörien toimesta [20] . Prosessi on parantunut vuodesta 2010, pienet korjaukset ja muutokset OpenJDK7:stä OpenJDK6:een voidaan tehdä tunneissa päivien sijaan. [21] .
IBM ja Oracle ilmoittivat 11. lokakuuta 2010 yhteisestä yhteistyöstä OpenJDK:n kehittämiseksi edelleen [22] .
OpenJDK perustui alun perin vain JDK 7:ään.
15. helmikuuta 2008 OpenJDK jakautui kahteen projektiin: OpenJDK, joka perustuu JDK 7:ään, ja JDK 6, joka tarjoaa ilmaisen version Java 6:sta.
Kaikilla OpenJDK:n versioilla (6, 7, 8, 9) on sama koodipohja. Eli Mercurial - OpenJDK:n uusien versioiden arkistot luodaan aiemmista. Pääkehitys tehdään OpenJDK:n versiossa, jota valmistellaan julkaisua varten. Erityisesti vuosina 2011–2013 pääkehitys tehtiin OpenJDK 8:ssa ja 2014–2016 OpenJDK 9:ssä. Uusien kirjastojen ja alijärjestelmien kehitystä siis tehdään juuri julkaisuun valmistelevassa versiossa. ja sen jälkeen, kun se on integroitu päävarastoon , se siirretään aikaisempiin versioihin.
Java - kääntäjä ja HotSpot - virtuaalikone ovat saatavilla GPL - lisenssillä .
Kesäkuussa 2008 julkistettiin IcedTea -projekti (Pakattu versio OpenJDK:sta Fedora 9 :ssä), joka läpäisi Technology Compatibility Kitin ja voi nyt väittää olevansa täysin yhteensopiva Java 6:n kanssa.
12. heinäkuuta 2008 OpenJDK hyväksyttiin Debianin epävakaan haaraan .
Heinäkuussa 2009 OpenJDK:n binääriversio Ubuntu 9.04 :lle läpäisi kaikki Java SE 6 -alustan kanssa yhteensopivuustestit. [23]
OpenJDK 6 -koontiversio on asennettu OpenSUSE 11 -pääpakettisarjaan, se sisältyy DVD :llä toimitettuihin pakkauksiin ja se on mukana pääprojektin arkistoissa.
Yhteistyö IBM:n, Applen ja SAP:n kanssa
11. lokakuuta 2010 IBM, suurin Apache Harmonyn rahoittaja, liittyi Oraclen OpenJDK-projektiin ja siirsi kaikki ponnistelut Harmonysta OpenJDK-projektiin.
12. marraskuuta 2010 Apple ja Oracle Corporation julkistivat OpenJDK-projektin Mac OS X -alustalle.
11. tammikuuta 2011 Mac OS X -porttiprojekti luotiin jo luodun OpenJDK:n pohjalta.
Heinäkuussa 2011 SAP AG ilmoitti liittyvänsä virallisesti OpenJDK-projektiin.
Java-virtuaalikoneet ( vertailu ) | |
---|---|
Aurinko , Oraakkeli | |
Tärkeimmät toteutukset | |
Upotettu |
|
Muut | |
Ei tuettu |
Java | |
---|---|
Alustat | |
Sun Technologies | |
Kolmannen osapuolen keskeiset tekniikat | |
Tarina |
|
Kielen ominaisuudet | |
Scripting kielet |
|
Java-konferenssit |
|