JRE (Java Runtime Environment)

menu icon

JRE (Java Runtime Environment)

Java Runtime Environment'ın (JRE) neler yaptığını ve Java uygulamalarını çalıştırmak için diğer Java platformu bileşenleriyle nasıl çalıştığını öğrenin.

JRE (Java Runtime Environment) nedir?

Java Runtime Environment ya da JRE, bilgisayarın işletim sisteminin üzerinde çalışan ve belirli bir Java programının çalışmak için ihtiyaç duyduğu sınıf kitaplıklarını ve diğer kaynakları sağlayan bir yazılım katmanıdır.

JRE, Java programlarının geliştirilmesi ve çalıştırılmasına yönelik, birbiriyle ilişkili üç bileşenden biridir. Diğer iki bileşen aşağıdaki gibidir:

  • Java Development Kit ya da JDK, Java uygulamaları geliştirmek için kullanılan bir araç kümesidir. Geliştiriciler, JDK'leri Java sürümüne ve paket ya da basıma göre seçerler; Java Enterprise Edition (Java EE), Java Special Edition (Java SE) ya da Java Mobile Edition (Java ME) gibi. Java programı çalıştırmak Java programı geliştirme sürecinin bir parçası olduğundan, her JDK her zaman uyumlu bir JRE içerir.
  • Java Virtual Machine ya da JVM, canlı Java uygulamalarını yürütür. Her JRE varsayılan bir JRE içerir, ancak geliştiriciler, uygulamalarının belirli kaynak gereksinimlerini karşılayan bir başka JRE'yi seçmekte serbesttirler

JRE, JDK kullanılarak yaratılan Java kodunu, JVM'de çalıştırmak üzere gereken kitaplıklarla birleştirir ve daha sonra, ortaya çıkan programı yürüten JVM'nin bir eşgörünümünü oluşturur. JVM'ler birden çok işletim sistemi için kullanılabilir ve JRE ile yaratılan programlar tüm sistemlerde çalışır. Bu şekilde, Java Runtime Environment, Java programının herhangi bir işletim sisteminde değişiklik yapılmaksızın çalışmasına olanak sağlar.

Uyumlu bir JRE de dahil olmak üzere JDK' yi Oracle'dan yükleyebilirsiniz. (bağlantı IBM dışındadır).

JRE nasıl çalışır?

JDK ve JRE, hemen hemen her işletim sisteminde Java tabanlı uygulamaların kesintisiz olarak yürütülmesini sağlayan, sürdürülebilir bir çalıştırma zamanı ortamı oluşturmak için birbirleriyle etkileşimde bulunur. JRE çalıştırma mimarisini oluşturan öğeler şunlardır:

ClassLoader

Java ClassLoader, bir Java programını çalıştırmak için gereken tüm sınıfları dinamik olarak yükler. Java sınıfları yalnızca gerektiğinde belleğe yüklendiğinden, JRE bu işlemi istek üzerine otomatikleştirmek için ClassLoader'ları kullanır.

Bayt kodu doğrulayıcı

Bayt kodu doğrulayıcı, Java kodunun yorumlayıcıya geçmeden önce biçiminin ve doğruluğunun sağlanmasına olanak tanır. Kodun sistem bütünlüğünü ya da erişim haklarını ihlal ettiği durumlarda, sınıf bozuk olarak kabul edilir ve yüklenmez.

Yorumlayıcı

Bsyt kodu başarıyla yüklendikten sonra, Java yorumlayıcısı, Java programının temeldeki makinede yerel olarak yürütülmesini sağlayan bir JVM yönetim ortamı yaratır.

JRE neleri kapsar?

Java Virtual Machine'in yanı sıra JRE, Java uygulamalarınızdan en iyi şekilde yararlanmak için çeşitli destekleyici yazılım araçları ve özelliklerinden oluşur.

Devreye alma çözümleri

JRE kurulumuna, uygulamaların etkinleştirilmesini kolaylaştıran ve gelecekteki Java güncellemeleri için gelişmiş destek sağlayan Java Web Start ve Java Plugin gibi devreye alma teknolojileri dahildir.

Geliştirme araç takımları

JRE, geliştiricilerin kullanıcı arayüzünü geliştirmelerine yardımcı olmak için tasarlanmış araç takımlarını da içerir. Bu araç takımlarının bazıları şunlardır:

  • Java 2D: Java dilinde iki boyutlu grafik çizmek için kullanılan bir Uygulama Programlama Arayüzüdür (API). Geliştiriciler, zengin kullanıcı arayüzleri, özel efektler, oyunlar ve canlandırmalar yaratabilirler.
  • Abstract Window Toolkit (AWT): Nesneleri, düğmeleri, kaydırma çubuklarını ve pencereleri yaratmak için kullanılan bir Grafik Kullanıcı Arayüzüdür (GUI).
  • Swing: Esnek, kullanıcı dostu özelleştirmeler sunmak için zengin bir pencere aracı kümesini kullanan başka bir basit grafik kullanıcı arayüzüdür.

Entegrasyon kitaplıkları

Java Runtime Environment, geliştiricilerin uygulamaları ve hizmetleri arasında kesintisiz veri bağlantıları yaratmalarına yardımcı olmak için bir dizi entegrasyon kitaplığı sağlar. Bu kitaplıkların bazıları şunlardır:

  • Java IDL (CORBA): Java programlama dilinde yazılmış dağıtılmış nesneleri desteklemek için Common Object Request Architecture'ı kullanır.
  • Java Database Connectivity (JDBC) API: Geliştiricilerin uzak ilişki veritabanlarına, düz dosyalara ve elektronik sayfalara erişime sahip uygulamalar yazabilmeleri için araçlar sağlar.
  • Java Naming and Directory Interface (JNDI): İstemcilerin adlandırma kurallarını kullanarak veritabanlarından bilgi getirebilecek taşınabilir uygulamalar oluşturmalarına olanak sağlayan bir programlama arayüzü ve dizin hizmetidir.

Dil ve yardımcı program kitaplıkları

JRE'ye, Java uygulamalarının tasarımı, paket sürümü oluşturma, yönetim ve izleme için gerekli olan java.lang ve java.util paketleri de dahildir. Bu paketlerden bazıları şunlardır:

  • Collections Framework: Uygulama verilerinin depolanmasını ve işlenmesini geliştirmek için tasarlanmış arayüzleri içeren bir derlemeden oluşan birleşik bir mimaridir.
  • Concurrency Utilities: Yüksek performanslı kullanım yardımcı programları içeren güçlü bir çerçeve paketidir.
  • Tercihler API'si: Aynı makinede birden çok kullanıcının kendi uygulama tercihlerini tanımlamak için birden çok kullanıcıya olanak sağlayan, basit, platformlar arası bir kalıcı API'dir.
  • Log'a Kaydetme: Daha fazla analiz için güvenlik hataları, yapılandırma hataları ve performans sorunları gibi log raporları üretir.
  • Java Arşivi (JAR): Birden çok dosyanın JAR biçiminde paketlenebilmesini sağlayan, karşıdan yükleme hızını önemli ölçüde iyileştiren ve dosya boyutunu küçültmeyi sağlayan, platformdan bağımsız bir dosya biçimidir.

JRE ve IBM

JRE ve IBM Cloud

Birçok kuruluş için Java, uygulama geliştirmenin önemli bir parçası olmaya devam etmekte, taşınabilir ve ölçeklenebilir çözümler oluştururken sağlam bir temel sağlamaktadır. Ayrıca, bulut serüveninde uygulamalarının modernleştirilmesinde kilit bir rol üstlenebilir.

Bir sonraki adımı atın:

  • Java uygulamalarının kullanıma alınması, izlenmesi ve yönetilmesi için güvenilir ve uygun maliyetli ticari destek sağlayan OpenJDK ve IBM Runtimes for Business'ı keşfedin.

Bir IBM Cloud hesabıyla hemen başlangıç yapın.