Apache Harmony - Apache Harmony

Apache Harmony
Apache Harmony Logo.png
Geliştirici (ler)Apache Yazılım Vakfı
Son sürüm
5.x5.0M15 / 15 Eylül 2010; 10 yıl önce (2010-09-15)
6.x6.0M3 / 15 Eylül 2010; 10 yıl önce (2010-09-15)
Depo Bunu Vikiveri'de düzenleyin
YazılmışC, Java
İşletim sistemipencereler, Linux
TürJava Sanal Makinesi, Java Kütüphane
LisansApache Lisans 2.0
İnternet sitesiuyum.apache.org

Apache Harmony emekli açık kaynak, ücretsiz Java uygulaması tarafından geliştirilmiştir Apache Yazılım Vakfı.[1] Mayıs 2005'in başlarında duyuruldu ve 25 Ekim 2006'da Yönetim Kurulu, Apache Harmony'yi üst düzey bir proje yapmak için oy kullandı. Harmony projesi (Şubat 2011 itibariyle)% 99 tamlık elde etti J2SE 5.0 ve% 97 için Java SE 6.[2] Android o zamandan beri işletim sistemi geçmişte Harmony'nin önemli bir kullanıcısı olmuştur. Android Nougat giderek daha fazla güveniyor OpenJDK kütüphaneler.[3]

29 Ekim 2011'de proje lideri Tim Ellison projeyi emekliye ayırıp bırakmama konusunda bir oylama başlattı. Sonuç 20'ye 2 lehte oldu.[4] proje 16 Kasım 2011 tarihinde emekliye ayrılmıştır.[5][6]

Tarih

Başlatma

Harmony projesi başlangıçta tüm geliştiricilerin birleştirme çabası olarak tasarlandı. ücretsiz Java uygulamaları. Birçok geliştiriciler yukarıdaki proje olması bekleniyordu[açıklama gerekli ] GNU, Apaçi ve diğer topluluklar. GNU geliştiricileri, ilk hazırlık planlamasına davet edildi ve katıldı.[7]

GNU Classpath ile uyumsuzluk

Hazırlık planlamasının verdiği izlenime rağmen, kodun kullanılmamasına karar verildi. GNU Sınıfyolu ve Harmony'nin uyumsuz bir lisans kullanması; bu nedenle Harmony ve mevcut ücretsiz Java projeleri arasındaki işbirliğini engeller.[8] Apache geliştiricileri daha sonra gerekli sınıfları sıfırdan yazın ve gerekli büyük kod bağışlarını bekleyin yazılım şirketleri. Projenin başlangıcında çeşitli yanlış anlamalar ve büyük şirketlerin hoşuna gitmesi IBM mevcut kodun büyük bir kısmını vermeyi önerdi, özgür Java topluluğunda projenin gerçek hedefleri hakkında biraz kafa karışıklığı yarattı.[9]

GNU Classpath ve Apache Harmony projeleri arasındaki önemli uyumsuzluk noktalarından biri, uyumsuz lisanslarıydı: Classpath's GNU Genel Kamu Lisansı ile bağlantı istisnası Harmony'nin Apache Lisansı.[9]

Sun'tan TCK lisansı almanın zorlukları

10 Nisan 2007'de Apache Yazılım Vakfı gönderdi açık mektup -e Sun Microsystems CEO, Jonathan Schwartz Java SE 5 için kabul edilebilir bir lisans alamamaları ile ilgili olarak Teknoloji Uyumluluk Kiti (TCK), projenin gerektirdiği şekilde Java SE 5 spesifikasyonu ile uyumluluğu göstermek için ihtiyaç duyulan bir test kiti. Güneş Java SE 5 için özellik lisansı.[10] Lisansı ne için kabul edilemez kılan ASF Harmony kullanıcıları için mevcut olan "kullanım alanı" üzerindeki sınırlamalar yoluyla hak kısıtlamaları getirmesidir, ile uyumlu değildir. Java Topluluğu Süreci kurallar.[11]

Sun bir şirket blogunda cevapladı[12][13] Java platformunun açık kaynaklı bir uygulamasını oluşturmayı amaçladığını, GPL TCK dahil, ancak önceliklerinin Java Platformu erişilebilir GNU / Linux altında topluluk GPL olabildiğince çabuk.

Bu cevap, eleştiren bazı tepkileri tetikledi. Güneş açık bir mektuba "yeterince açık bir şekilde" yanıt vermemek için,[14] daha doğrusu Apache Yazılım Vakfı; Bazıları, ASF'nin, özellikle açılış sınıf kütüphanesinin zaman çizelgesi göz önüne alındığında, Sun'dan daha fazla diplomasi ile elde edebilecekleri bir şeyi agresif bir şekilde talep etmek için akıllıca davrandığını düşünüyor.[15][16]

Sun, OpenJDK Mayıs 2007'de, TCK'nın herhangi bir OpenJDK bağlamında çalıştırılmasına izin veren özel bir lisansla birlikte GPL büyük ölçüde OpenJDK'dan türetilen uygulama.[17] Bu, GPL lisanslı olmayan Apache Harmony'yi kapsamaz. 9 Aralık 2010'da Apache Yazılım Vakfı, Java Topluluğu Süreç Yürütme Komitesinden istifa etti,[18] Harmony projesiyle kullanılmak üzere Apache tarafından kabul edilebilir bir lisans elde etmenin zorluğunu protesto ederek.[19]

Android SDK'da kullanın

Kullanılan sanal makine Google 's Android platform (Dalvik 4.4 sürümüne kadar ve halefi, Android Çalışma Zamanı (ART)) çekirdeği için bir Armoni alt kümesi kullanır. Sınıf Kitaplığı.[20][21] Ancak Dalvik, Java SE ne de Java ME Sınıf Kitaplığı profiller (örneğin J2ME sınıflar AWT ve Salıncak desteklenmez).

Android 7.0 "Nougat" Harmony ile değiştirildi OpenJDK.[3]

Projenin sonu

11 Ekim 2010'da, IBM, projedeki en büyük katılımcı katılmaya karar verdi Oracle üzerinde OpenJDK etkin bir şekilde çabalarını Harmony'den Oracle referans uygulaması.[22][23] IBM'in Linux ve açık kaynak başkanı Bob Sutor, "IBM'in geliştirme çabasını Apache Project Harmony'den OpenJDK'ya kaydıracağını" yazdı.[24] Mart 2011'de, IBM Tim Ellison, Harmony için Proje Yönetim Başkanlığı görevinden istifa ettiğini açıkladı.[25][26] IBM'in bağlantısının kesilmesinden sonra, projenin etkinlik seviyesi büyük ölçüde düştü.[27]

29 Ekim 2011'de, proje lideri Tim Ellison tarafından armoni geliştirme posta listesinde projeyi emekli edip etmeme konusunda bir anket başlatıldı. 3 Kasım'daki sonuç, emeklilik lehine 20-2 idi.[4] 16 Kasım 2011'de Apache Software Foundation yönetim kurulu, projenin sonlandırılması için bir önergeyi kabul etti.[28] Bir yönetmen, Larry Rosen, teklifin esasından ziyade zamanlamasına dayalı olarak "hayır" oyu vermek; aksi takdirde oybirliğiydi.[28] Proje 16 Kasım 2011'de emekliye ayrıldı.[5]

Geliştirme Takımı

Başlangıçta, Apache Harmony birkaç şirketten bazı büyük kod katkıları aldı. Açık posta listelerinde geliştirme tartışmaları yapılmıştır. Daha sonra, Apache Software vakıf danışmanları, geliştirme sürecini "Apache yolu" ile daha uyumlu hale getirmek için çok çaba sarf ettiler.[29][30] ve çabaları başarılı görünüyordu.

Son geliştirme durumu

Apache Harmony, 29 Ekim 2006 tarihinde resmi Apache projeleri arasında kabul edildi.

Mimari

Dinamik Çalışma Zamanı Katmanı sanal makinesi aşağıdaki bileşenlerden oluşur:

  1. Sanal makine çekirdeği: alt bileşenleri ile JVM kontrol fonksiyonlarının çoğunu yoğunlaştırır.
  2. Taşıma katmanı: platforma özgü ayrıntıları tek bir arabirimin arkasındaki diğer VM bileşenlerinden gizler ve Apache Taşınabilir Çalışma Zamanı katman.
  3. Çöp toplayıcı: Java nesnelerini yığın belleğinde ayırır ve çeşitli algoritmalar kullanarak erişilemeyen nesneleri geri alır
  4. Yürütme Müdürü: bir yöntemi derlemek için yürütme motorunu seçer, profilleri ve dinamik yeniden derleme mantığını işler.
  5. Sınıf Kitaplığı: bir Java standart kitaplığıdır.
  6. İş parçacığı yöneticisi işletim sistemi iş parçacığını işleyen
  7. Yürütme motoru: aşağıdakilerden oluşur:
    1. tam zamanında derleyici yöntem kodunun derlenmesi ve yürütülmesi için.
    2. çevirmen daha kolay hata ayıklama için.

Destek platformu ve işletim sistemi

Proje, birçok platformda ve işletim sisteminde geliştirmeyi kolaylaştıran taşınabilir bir uygulama sağladı. Ana odak noktası pencereler ve Linux x86 ve x86-64 mimarilerindeki işletim sistemleri.[31]

Windows 2000pencereler XP, Sunucu 2003, VistaLinux RHEL, SLES, Debian, Gentoo, FedoraFreeBSDAIXMac OS X
IA-32 (Pentium III veya daha iyisi)HayırEvetEvetHayırYokYok
x86-64 (Intel 64, AMD64)YokEvetEvetYokYokYok
Itanium (IA64, IPF)YokHayırEvetYokYokYok
PowerPC 32 bitYokYokHayırYokYokYok
PowerPC 64 bitYokYokHayırYokHayırYok
zSeries 31 bitYokYokHayırYokYokYok

Sınıf kitaplığı kapsamı

Yazılım şirketlerinden beklenen bağışlar fiilen alındı. Apache Harmony artık çalışma kodunu içerir. Salıncak, AWT ve Java 2D katkıda bulunan kod Intel.

Şubat 2011 itibariyleHarmony projesi için% 99 tamlık elde etti JDK 5.0 ve% 97 için Java SE 6.[2]

Apache Harmony projesinin ilerlemesi J2SE 1.4 ve Java SE 5.0'a göre izlenebilir.[32] Ayrıca, Java SE 6.0 için geliştirilmekte olan Harmony v6.0 için bir dal bulunmaktadır.

Apache Harmony geliştiricileri, hedeflerine ulaşmak için mevcut, sahada test edilmiş açık kaynak projelerini entegre eder ( tekerleği yeniden icat etmek ). Bu projelerin çoğu olgunlaşmış ve iyi biliniyor ve kütüphanenin diğer bölümlerinin sıfırdan yazılması gerekiyordu.

Bu, Apache Harmony projesinde kullanılan mevcut açık kaynaklı bileşenlerin bir listesidir; bazıları proje başlamadan önce kullanımdaydı.

BileşenAçıklama
YBÜOlgun C / C ++ ve Java kitaplıkları Unicode destek ve yazılım uluslararasılaşması ve küreselleşme
Apaçi XalanXSLT stil sayfası işlemcisi Java, C ++ hangi uygular XPath dil
Apache XercesXML ayrıştırıcı Java kütüphanesi, C ++, Perl
Apache Taşınabilir Çalışma ZamanıÇapraz platform soyutlama kitaplığı, platform bağımsızlığı sağlar
Apache CXFSağlam, yüksek performans Ağ hizmetleri çerçeve gibi protokoller üzerinde çalışır SABUN, XML / HTTP, RESTful HTTP, CORBA
BCELİkili Java sınıflarını ayrıştırmak, değiştirmek ve yeniden oluşturmak için kitaplıklar, ör. bayt kodu
MX4JJava Yönetim Uzantıları Uygulamaları, sistem nesnelerini, cihazları ve hizmet odaklı ağları yönetmek ve izlemek için (JMX) araçları
VM MagicDoğrudan bellek işlemleri vb. Ekleyerek Java'da sistem programlamayı kolaylaştırmak için Java diline uzantı seti.
Şişme kaleJava için hafif şifreleme kitaplıkları koleksiyonu ve C #
ANTLRDil aracı, birçok hedef dilde eylemler içeren gramer açıklamalarından tanıyıcılar, yorumlayıcılar, derleyiciler ve çevirmenler oluşturmak için bir çerçeve sağlar

Dokümantasyon

Harmony, alternatif ücretsiz Java uygulamalarından daha az belgelenmiştir. Örneğin, GNU Classpath içinde, merkezin her yöntemi CORBA sınıf (ORB), hem standart soyut API sınıfında açıklayıcı yoruma sahiptir[33] Ve uygulama.[34] İçinde Yoko Harmony tarafından kullanılan proje,[35] standart bildirimdeki çoğu yöntem[36] ve uygulama sınıfı[37] Ekim 2006 sonunda belgelenmemişti. Ayrıca, GNU Classpath hem eski hem de yeni CORBA özelliklerini destekledi (Sun'ın uygulamasıyla aynı). Uyum, farklı olarak, eski standardın merkezi yöntemini terk etti (ORB.connect (Nesne)) tamamen uygulanmamış.

Araçlar

Java platformunun eksiksiz bir uygulaması ayrıca bir derleyici Java kaynak kodunu şu dile çeviren bayt kodları yöneten bir program JAR dosyaları, bir hata ayıklayıcı, ve bir uygulama izleyici ve internet tarayıcısı Eklenti, birkaç isim. Harmony, derleyici, uygulama görüntüleyici, jarsigner, javah, javap, Önemli araç, policytool ve açmak200.[38]

Sanal makine desteği

Harmony'de yedi sanal makine Tamamı harici gruplar tarafından bağışlanan Harmony Sınıf Kitaplığı'nı çalıştıran uygulamalar:

  • JC Harmony Edition VM, "JCHEVM", JCVM'ler çevirmen, yazar Archie Cobbs'un katkılarıyla.
  • BootJVM, basit önyükleme Daniel Lydick tarafından sağlanan sanal makine.
  • SableVM, gelişmiş, taşınabilir bir tercüman, yazarların katkılarıyla Sable Araştırma Grubu; ve Dinamik Çalışma Zamanı Katmanı Sanal Makinesi.
  • DRLVM, bir tam zamanında derleyici katkıda bulunan Intel.
  • BEA, Apache Harmony Sınıf Kitaplığı'nı çalıştıran JRockit VM'nin değerlendirme sürümünün kullanılabilirliğini duyurdu.[39]
  • JikesRVM, açık kaynak meta-dairesel Apache Harmony Sınıf Kitaplığını kullanan JVM.[40]
  • Ja.NET SE, üzerinde çalışan bir Java 5 JDK (sınıf kitaplıkları, araçlar vb.) sağlayan açık kaynaklı bir proje .NET Framework CLR. Ja.NET SE, Apache Harmony Sınıf Kitaplıklarına dayanmaktadır.[41]

Kasım 2006'nın sonunda, bu sanal makinenin sağladığı dil desteği hala eksikti ve derleme talimatlarının kullanılması önerildi IBM 's tescilli Bunun yerine sınıf kitaplığı test paketini çalıştırmak için J9. Ancak bu artık gerekli değildir (Temmuz 2007 itibariyle).

Projenin geri kalanına gelince, DRLVM sanal makine geliştirme şimdi durdu (Mayıs 2011 itibariyle).[42]

Uygulama durumu

Harmony, tasarımından bu yana önemsiz olmayan Java uygulamalarını çalıştırma becerisinde büyüdü.[43] Temmuz 2007 itibariyledesteklenen uygulamalar şunları içerir:

Ancak, Harmony'nin eksik kitaplığı diğer bazı uygulamaları başlatmasını engelledi:

  • ArgoUML: çünkü ihtiyacı var Java uygulaması Harmony'de hala kullanılamayan uygulama.
  • Apache Geronimo bazı sorunlar ve geçici çözümlerle Apache Harmony üzerinde çalışır.[48]
  • Vuze, önceden Azureus, uygulanmamış güvenlik sınıfları nedeniyle.

Ayrıca bakınız

Referanslar

  1. ^ "Proje Başlangıcından Gelen Orijinal SSS Soruları". harmony.apache.org. Alındı 27 Şubat 2011. Lisansın açık kaynaklı bir uygulamaya izin verdiği Java SE'nin ilk sürümü olduğu için Java SE 5 ile başlıyoruz, ancak Java SE 6 ve sonraki sürümlerle devam edeceğiz.
  2. ^ a b "Sınıf Kitaplığı Bileşen Durumu". harmony.apache.org. Alındı 27 Şubat 2011.
  3. ^ a b Amadeo, Ron (7 Ocak 2016). "Android N OpenJDK'ye geçiyor, Google Oracle'a GPL tarafından korunduğunu söylüyor". Ars Technica. Övmek. Alındı 1 Temmuz, 2016.
  4. ^ a b Ellison, Tim (3 Kasım 2011). "Apache Harmony'yi Tavan Arasına Taşı (güncellendi)". org.apache.harmony.dev. Arşivlenen orijinal 14 Aralık 2013. Alt URL
  5. ^ a b Ellison, Tim (16 Kasım 2011). "Kurul çatı katı kararını kabul etti". org.apache.harmony.dev. Arşivlenen orijinal 14 Aralık 2013. Alındı 27 Kasım 2011. Alt URL
  6. ^ "(Apache) Harmony'nin sonu". The H. 4 Kasım 2011.
  7. ^ Mark Wielaard (9 Mayıs 2005). "Uyum!". Arşivlenen orijinal 16 Mayıs 2008. Alındı 21 Ekim, 2010. Apache, tamamen ücretsiz bir j2se uygulaması hakkında tartışma için bir teklif hazırladı. Buna "Uyum" diyorlar. Bu (şu anda) kodla ilgili değil, böyle bir canavara ulaşmak için bir yön bulmakla ilgili. Dalibor, Tom, Jeroen ve benden bu tartışmada onlara yardım etmemiz ve muhtemelen bunun için nasıl iyi bir mimari kuracaklarını göstermemiz istendi.
  8. ^ Geir Magnusson Jr. (24 Mayıs 2006). "Ücretsiz Java uygulaması için bir öneri". Apaçi.
  9. ^ a b Mark Wielaard (24 Mayıs 2006). "Özgür bir Java'ya doğru". LWN.net. Tüm bunlar, Intel tarafından bağışlanan bazı kodlar olmasına rağmen, Harmony'yi destekleyen orijinal özgür yazılım projeleri ile şu anda Apache Harmony olarak bilinen proje arasında pratik bir işbirliği olmadığı anlamına gelir. Bütün bunlar, bazı kişilerin Harmony'yi tam bir topluluk projesi değil, ASF projesi kisvesi altında bir şirket konsorsiyumu olarak düşünmesine neden oldu.
  10. ^ "Sun Microsystems'e Açık Mektup - JCK". apache.org.
  11. ^ ASF'ye göre, 1) bir spesifikasyon lideri, Herhangi bir lisans sahibinin bu tür Bağımsız Uygulamaları yaratma veya dağıtma hakkını sınırlayacak veya kısıtlayacak herhangi bir sözleşme koşulu veya sözleşmeyi empoze etmek (bölüm 5.C.III) ve 2) bir spesifikasyon sorumlusu, bir spesifikasyonun uyumlu herhangi bir uygulaması için gerekli tüm IP telifsiz olarak lisanslamalıdır (bölüm 5.B).
  12. ^ "Kayıtta". Arşivlenen orijinal 21 Nisan 2007.
  13. ^ "Sun'dan Apache'ye:" Açık Kaynak İşlem Bir Yolculuktur "- Java IoT".
  14. ^ "Açık Güneşten Gelen Sessizlik". Ian Skerrett.
  15. ^ "Mark J. Wielaard".
  16. ^ Gilbert, Dave (16 Nisan 2007). "Apaçinin Açık Mektuptan Pişman Olmasının Beş Nedeni". Arşivlenen orijinal 18 Nisan 2007. Alındı 8 Mart, 2008.
  17. ^ "OpenJDK Topluluğu TCK Lisans Sözleşmesi V 1.1" (PDF). Sun Microsystems. Alındı 8 Mart, 2008. Lisans Sahibi Uygulamasının büyük ölçüde OpenJDK Kodundan türetilmiş olmasına ve üçüncü bir tarafa dağıtılması durumunda, GPL Lisansı altında dağıtılmasına tabi ve şartına bağlı olarak Sun, Sun'ın Fikri kapsamında Lisans Alan'a hibe eder. TCK'yı dahili olarak ve yalnızca Lisans Sahibi Uygulamasını geliştirmek ve test etmek amacıyla kullanmak için dünya çapında, kişisel, münhasır olmayan, devredilemez, sınırlı bir lisans olan TCK Mülkiyet Hakları.
  18. ^ "ASF, JCP İcra Komitesinden İstifa Etti". Apache Yazılım Vakfı.
  19. ^ "Apache, Oracle'ın ihlallerini protesto etmek için Java yönetişim grubundan ayrıldı". Ars Technica.
  20. ^ "Google'ın Android SDK'sı, Java Lite ve Apache Harmon Lehine Java ME'yi Atlıyor". infoq.com. 12 Kasım 2007. Alındı 31 Mayıs, 2009. Google, Java SE veya Java ME'nin tam sürümünü sağlamak yerine iki cepheden ayrıldı. İlk olarak, çekirdek Java paketlerinin sınırlı bir alt kümesi sağlanır. (...) Bu rotaya giderek Android, geliştirme dili olarak Java kullanan ancak tam JDK'yı desteklemeyen başka bir Google projesi GWT'nin izinden gidiyor.
  21. ^ "Paket Dizini". Handset Alliance'ı aç. Arşivlendi 27 Haziran 2009 tarihli orjinalinden. Alındı 31 Mayıs, 2009.
  22. ^ "Oracle ve IBM, OpenJDK Aracılığıyla Java İnovasyonunu Hızlandırmak İçin İşbirliği Yapıyor". Oracle Corporation. Arşivlendi 14 Ekim 2010'daki orjinalinden. Alındı 22 Ekim 2010.
  23. ^ Ryan Paul. "Java savaşları: IBM, Oracle Apache Harmony'den kaçarken OpenJDK'ye katıldı". Ars Technica. Arşivlendi 19 Ekim 2010'daki orjinalinden. Alındı 22 Ekim 2010.
  24. ^ Bob Sutor. "IBM, OpenJDK topluluğuna katıldı, açık kaynak Java çabalarının birleştirilmesine yardımcı olacak". Arşivlenen orijinal 18 Ekim 2010. Alındı 22 Ekim 2010. IBM, geliştirme çabasını Apache Project Harmony'den OpenJDK'ya geçirecek. Aynı şeyi yapmak isteyenler için, geçişi olabildiğince kolay hale getirmek için birlikte çalışacağız. IBM, diğer Apache projelerine güçlü bir şekilde katılmaya devam edecek.
  25. ^ Tim Ellison (14 Mart 2011). "Harmony projesini yeniden başlatma". Alındı 20 Mart, 2011.
  26. ^ "Apache Harmony'nin Geleceği Nedir?". infoq.com. 14 Mart 2011. Alındı 20 Mart, 2011.
  27. ^ "Posta listesi arşivleri: [email protected]". apache.org. Alındı 11 Eylül, 2011.
  28. ^ a b "Yönetim Kurulu Toplantı Tutanağı". Apache Yazılım Vakfı. 16 Kasım 2011. Alındı 8 Ağustos 2012. Larry, sözleşmenin feshine karşı olmadığını belirtmek ister, sadece mesajlaşma üzerinde çalışmak için daha fazla zamana sahip olmayı tercih ederdi.
  29. ^ Leo Simons (24 Temmuz 2006). "Tüm gelişimin burada olmasını istiyoruz". Arşivlenen orijinal 29 Eylül 2007. Alındı 28 Temmuz 2006.
  30. ^ "Apaçi Yolu". Arşivlenen orijinal 21 Ağustos 2006. Alındı 28 Temmuz 2006.
  31. ^ Harmony Dokümantasyon Ekibi. "Apache Harmony - Desteklenen Platformlar". harmony.apache.org.
  32. ^ "JDK_5.0 ve Harmony_5.0 arasındaki karşılaştırmanın sonuçları".
  33. ^ http://cvs.savannah.gnu.org/viewcvs/*checkout*/classpath/org/omg/CORBA/ORB.java?rev=1.2.2.12&root=classpath[kalıcı ölü bağlantı ]
  34. ^ http://cvs.savannah.gnu.org/viewcvs/*checkout*/classpath/gnu/CORBA/OrbFunctional.java?rev=1.6&root=classpath[kalıcı ölü bağlantı ]
  35. ^ "Harmony en son Yoko kavanozlarını kullanıyor ..." 27 Eylül 2006.
  36. ^ http://svn.apache.org/repos/asf/incubator/yoko/trunk/yoko-spec-corba/src/main/java/org/omg/CORBA/ORB.java
  37. ^ http://svn.apache.org/repos/asf/incubator/yoko/trunk/core/src/main/java/org/apache/yoko/orb/OBCORBA/ORB_impl.java
  38. ^ "Apache Harmony - Proje Yol Haritası".
  39. ^ "[genel] Harmony Sınıf Kitaplığı için JRockit H27.2.1 şimdi yayınlandı".
  40. ^ "Jikes RVM 3.0 + Apache Harmony duyurusu!".
  41. ^ "Janet Dev". Janet Dev.
  42. ^ "Subversion Commits". harmony.apache.org. Alındı 28 Mayıs 2011.
  43. ^ "Uygulama durumu". apache.org. Arşivlenen orijinal 10 Ağustos 2007. Alındı 4 Kasım 2006.
  44. ^ "Arşivlenmiş kopya". Arşivlenen orijinal 8 Şubat 2007. Alındı 4 Kasım 2006.CS1 Maint: başlık olarak arşivlenmiş kopya (bağlantı)
  45. ^ "Apache_Tomcat". apache.org. Arşivlenen orijinal 10 Şubat 2007. Alındı 4 Kasım 2006.
  46. ^ "JUnit". apache.org.
  47. ^ "Apache_Ant". apache.org. Arşivlenen orijinal 10 Şubat 2007. Alındı 4 Kasım 2006.
  48. ^ "Apache Harmony". apache.org.

Dış bağlantılar