Default-jdk, ecj, gcj ve openjdk arasındaki fark nedir?


23

Bu sabah bir şey yüklemeye çalıştım ve şöyle bir ifadeyle karşılaştım:

The program 'javac' can be found in the following packages:
 * default-jdk
 * ecj
 * gcj-4.6-jdk
 * gcj-4.7-jdk
 * openjdk-7-jdk
 * openjdk-6-jdk
Try: sudo apt-get install <selected package>

Default-jdk, ecj, gcj ve openjdk arasındaki fark nedir?

Şimdiden teşekkürler.


1
Jikes de var.
Pacerier 13:14

Yanıtlar:


16

Varsayılan-jre

Bu, openjdk-7-jre'ye (ve temelde openjdk-7-jre'ye eşdeğerdir ) ve varsayılan-jre-headless'e bağlı olan basit bir pakettir . OpenJDK 7 JRE olan "Standart Java veya Java uyumlu Çalışma Zamanı" nı yükler.

Bu paket, Java çalışma zamanına veya i386 için openjdk-7-jre olan i386 mimarisi için önerilen Java uyumlu çalışma zamanına işaret eder.

Paket bilgisi
Paket bağımlılıkları (sossuz)

ecj

Bu "bağımsız Eclipse Java derleyici" dir. Kurulum, bağımsız bir paket olduğundan Eclipse'i yüklemeyecektir (aşağıdaki bağımlılıklar bağlantısına bakın). "Eclipse'in bir parçası olarak dağıtılan Eclipse JDT derleyicisinin bağımsız bir sürümü" içerir ve Java 1.3 ile 1.7 arasında uyumludur.

Bu paket, Eclipse'in bir parçası olarak dağıtılan Eclipse JDT derleyicisinin bağımsız bir sürümünü sunar. JCK'yı (Java Uyumluluk Kiti) geçer ve Java 1.3, 1.4, 1.5, 1.6 ve 1.7 ile uyumludur.

Paket bilgisi
Paket bağımlılıkları (sossuz)

gcj-4,6-JDK

(gcj-4.7-jdk aynıdır ancak Java 7 için)

Bu, Java bytecode ve kaynak dosyalarını yerel olarak derlemek için GCC derleyicisine bir ön uçtur.

GCJ, hem Java (tm) kaynak hem de bytecode dosyalarını doğal olarak derleyebilen GCC derleyicisine bir ön uçtur. Derleyici ayrıca sınıf dosyaları da oluşturabilir. Sınıf yolundaki diğer Java geliştirme araçları bu pakete dahil edilmiştir.

Paket aynı zamanda bir paketleyici komut dosyası dizileri ve sembolik bağlar da içerir. GCJ araç setine Java-SDK benzeri bir arayüz sağlanması amaçlanmıştır.

Kapalı kaynak Oracle Java derleyicisine açık kaynaklı bir alternatif olması gerekiyordu. Şimdi çoğunlukla eski ve modası geçmiş (güncel değil) görünüyor, aşağıdaki bağlantılara bakın (özellikle GCJ giriş sayfasındaki son güncellemeler).

Paket bilgisi

GNU’nun Java Derleyicisi (GCJ) öldü mü? - Stack Overflow
GCJ ana sayfası gnu.org'da (Güncelleme: Bağlantı şimdi gitti, ancak GCJ wiki hala kullanılabilir durumda)

OpenJDK-6-JDK

(openjdk-7-jdk aynıdır ancak Java 7 için)

Java platformunun açık kaynaklı bir versiyonu.
Gönderen Wiki :

OpenJDK projesinin temel amacı, Java SE Platformunun (6 ve 7) açık kaynaklı bir uygulama üretmektir. Bu, Ubuntu'nun kullandığı varsayılan Java sürümüdür ve kurulumu en kolay olanıdır.

Paket özeti:

OpenJDK, Java programlama dilini kullanan uygulamalar, uygulamalar ve bileşenler oluşturmak için bir geliştirme ortamıdır.

Paketler, IcedTea build desteği ve IcedTea projesindeki yamalar kullanılarak oluşturulmuştur.

Paket bilgisi


Ayrıca, sorunuzda bahsedilmeyen Oracle Java (varsayılan repolarda olmadığı için) idi;

oracle-java7-yükleyici

( Oracle tarafından .tar.gz'da dağıtılan Web Up8 PPA'dan paket adı )

Java'nın kapalı kaynak kodlu 'resmi' uygulaması (daha önce Sun). Lisans sorunları nedeniyle resmi depolarda bulunmamak. Web Up8 tarafından sizin için indirip yükleyen bir script olarak kullanıma sunuldu.

Nasıl kurulur - Web Up8


ecj kurulumunun Eclipse + Java'yı yükleyeceği anlamına mı geliyor?
rɑːd '16

GCJ'nin özellikle amacı nedir?
rʒɑdʒɑ

@rajagenupula Düzenlemelerimi gör ↑↑
kiri

4

Ben de aynı problemi yaşadım. Bulduğum şey, birinden diğerine farkları olduğuydı.

Hem default-jdkve openjdkmore içindeki aynı Java API kodları sahip olarak. Ancak fark, hedef platformda.

  • openjdk: En istikrarlı olanıdır. Tüm platformlar için tasarlandı . Temelde Açık kaynak platformları hedef alıyor .

  • default-jdk: Kararlı değil . Belirli hedef platformları hedefleyen bir tasarıma sahiptir . Temel olarak Kapalı platformları hedefliyor . (Açık Kaynak için daha sonra erişilebilirdi) JRE'ler burada.

Ama diğerleri tamamen farklı: Onlar sadece Derleyiciler . Geldikleri biliniyordu, çünkü başında Java Açık Kaynak için uygun değildi. Eclipse gibi şeyler için sadece cetain derleyicileri piyasaya sürüldü.

  • gcj -jdk: (Java için GNU Derleyicisi). GNU'da Java için bir derleyicidir . (Java tarafından kullanılır)

  • ecj: (Eclipse Java Derleyicisi) Eclipse tarafından kullanılan Java derleyicisidir.

Bu ecj, Java Evrimsel Hesaplama Araç Takımı olan ECJ değil


Uğradığın için teşekkürler, lütfen cevabım üzerine yazdığım yukarıdaki yorumlara bakınız ve lütfen bunları çözmeye çalışınız.
rʒɑdʒɑ
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.