Last Updated on April 21, 2021 by
Dengan mendownload JRE akan membuat JVM dan memastikan dependensi tersedia untuk program Java Anda.
Mendownload Java Runtime Environment secara bersamaan dengan Java Development Kit (JDK), dan Java Virtual Machine (JVM), akan membentuk trifecta yang kuat dari komponen platform Java untuk mengembangkan dan menjalankan aplikasi Java.
Dalam pembahasan singkat ini, Anda akan belajar tentang JRE, yang merupakan lingkungan runtime untuk Java.
Secara praktis, lingkungan runtime adalah perangkat lunak yang dirancang untuk menjalankan perangkat lunak lain. Sebagai lingkungan runtime untuk Java, JRE berisi pustaka kelas Java, pemuat kelas Java, dan Mesin Virtual Java. Dalam sistem ini:
- The class loaderbertanggung jawab untuk benar memuat kelas dan menghubungkan mereka dengan perpustakaan kelas Java inti.
- The JVMbertanggung jawab untuk memastikan aplikasi Java memiliki sumber daya yang mereka butuhkan untuk menjalankan dan melakukan dengan baik di perangkat Anda atau lingkungan cloud.
- The JREterutama wadah untuk komponen-komponen lainnya, dan bertanggung jawab untuk mendalangi kegiatan mereka.
Table of Contents
Apa Itu Runtime Environment
Program perangkat lunak perlu dijalankan dan untuk melakukannya, program memerlukan lingkungan untuk dijalankan. Lingkungan waktu proses memuat file kelas dan memastikan ada akses ke memori dan sumber daya sistem lain untuk menjalankannya.
Di masa lalu, sebagian besar perangkat lunak menggunakan sistem operasi (OS) sebagai lingkungan runtime-nya. Program ini berjalan di dalam komputer apa pun yang digunakan, tetapi mengandalkan pengaturan sistem operasi untuk akses sumber daya.
Resource dalam hal ini akan menjadi hal-hal seperti memori dan file program serta dependensi. Java Runtime Environment mengubah semua itu, setidaknya untuk program Java.
Apakah Itu JRE?
Java Run-time Environment (JRE) adalah bagian dari Java Development Kit (JDK). Merupakan distribusi perangkat lunak yang dapat di download JRE secara gratis yang memiliki Java Class Library, alat khusus, dan JVM yang berdiri sendiri.
Ini adalah lingkungan paling umum yang tersedia di perangkat untuk menjalankan program java. Kode sumber Java dikompilasi dan diubah menjadi bytecode Java. Jika Anda ingin menjalankan bytecode ini di platform apa pun, Anda harus download JRE.
JRE memuat kelas, memverifikasi akses ke memori, dan mengambil sumber daya sistem. JRE bertindak sebagai lapisan di atas sistem operasi.
Ini juga termasuk:
- Teknologi yang digunakan untuk penyebaran seperti Java Web Start.
- Toolkit untuk antarmuka pengguna seperti Java 2D.
- Perpustakaan integrasi seperti Java Database Connectivity (JDBC) dan Java Naming and Directory Interface (JNDI).
- Perpustakaan seperti Lang dan util.
- Pustaka dasar lainnya seperti Java Management Extensions (JMX), Java Native Interface (JNI) dan Java for XML Processing (JAX-WS).
Kita dapat melihat perangkat lunak sebagai rangkaian lapisan yang berada di atas perangkat keras sistem. Setiap lapisan menyediakan layanan yang akan digunakan (dan diperlukan) oleh lapisan di atasnya. Java Runtime Environment adalah lapisan perangkat lunak yang berjalan di atas sistem operasi komputer, menyediakan layanan tambahan khusus untuk Java.
JRE memperhalus keragaman sistem operasi, memastikan bahwa program Java dapat berjalan di hampir semua OS tanpa modifikasi. Ini juga menyediakan layanan bernilai tambah. Manajemen memori otomatis adalah salah satu layanan JRE yang paling penting, memastikan bahwa pemrogram tidak perlu mengontrol alokasi dan realokasi memori secara manual.
Singkatnya, JRE adalah semacam meta-OS untuk program Java. Ini adalah contoh klasik abstraksi, mengabstraksi sistem operasi yang mendasarinya menjadi platform yang konsisten untuk menjalankan aplikasi Java.
Terdiri Dari Apa JRE?
JRE terdiri dari komponen-komponen berikut:
- Teknologi penyebaran seperti penerapan, plug-in Java, dan Java Web Start.
- Toolkit antarmuka pengguna, termasuk Abstract Window Toolkit (AWT), Swing, Java 2D, Accessibility, Image I / O, Print Service, Sound, drag, and drop (DnD) dan metode masukan.
- Pustaka integrasi termasuk Interface Definition Language (IDL), Java Database Connectivity (JDBC), Java Naming and Directory Interface (JNDI), Remote Method Invocation (RMI), Remote Method Invocation Over Internet Inter-Orb Protocol (RMI-IIOP) dan scripting.
- Library dasar lainnya, termasuk dukungan internasional, input/output (I / O), mekanisme ekstensi, Beans, Java Management Extensions (JMX), Java Native Interface (JNI), Math, Networking, Override Mechanism, Security, Serialization dan Java untuk XML Memproses (XML JAXP).
- Pustaka dasar Lang dan util, termasuk lang dan util, zip, Java Archive (JAR), instrumen, refleksi, Koleksi, Concurrency Utilities, manajemen, pembuatan versi, Logging, API Preferensi, Objek Ref, dan Ekspresi Reguler.
- Java Virtual Machine (JVM), yang terdiri dari Server Virtual Machine dan Java HotSpot Client.
Bagaimana JRE Bekerja Dengan JVM
Java Virtual Machine adalah sistem perangkat lunak yang berjalan bertanggung jawab untuk melaksanakan program-program Java hidup. JRE adalah sistem pada disk yang mengambil kode Java Anda, menggabungkannya dengan pustaka yang diperlukan, dan memulai JVM untuk menjalankannya.
JRE berisi pustaka dan perangkat lunak yang perlu dijalankan oleh program Java Anda. Sebagai contoh, pemuat kelas Java adalah bagian dari Lingkungan Waktu Proses Java.
Perangkat lunak penting ini memuat kode Java yang dikompilasi ke dalam memori dan menghubungkan kode tersebut ke pustaka kelas Java yang sesuai.
JRE memiliki instance JVM dengannya, kelas perpustakaan dan alat pengembangan. Untuk memahami cara kerja JRE, mari kita lihat contoh program “Hello World” sederhana.
- import util. *
- public static void main (String [] args) {
- out.println (? Halo dunia?);
- }
Setelah Anda menulis program ini, Anda harus menyimpannya dengan ekstensi .java. Kompilasi program Anda. Output dari compiler Java adalah kode byte yang tidak bergantung pada platform.
Setelah kompilasi, kompilator menghasilkan file .class yang memiliki bytecode. Bytecode adalah platform independen dan berjalan di perangkat apa pun yang memiliki JRE. Dari sini, pekerjaan JRE dimulai. Untuk menjalankan program Java apa pun, Anda memerlukan JRE.
Langkah-langkah berikut berlangsung saat runtime:
Class Loader
Pada langkah ini, class loader memuat berbagai class yang penting untuk menjalankan program. Pemuat kelas secara dinamis memuat kelas-kelas di Java Virtual Machine.
Saat JVM dimulai, tiga pemuat kelas digunakan:
- Loader kelas bootstrap
- Loader kelas ekstensi
- Loader kelas sistem
Pemverifikasi kode byte Pemverifikasi kode
byte dapat dianggap sebagai penjaga gerbang. Ini memverifikasi bytecode sehingga kode tersebut tidak membuat gangguan apa pun untuk interpreter. Kode diperbolehkan untuk diinterpretasikan hanya ketika melewati tes dari pemverifikasi Bytecode yang memeriksa format dan memeriksa kode ilegal.
Interpreter
Setelah kelas dimuat dan kode diverifikasi, interpreter membaca kode assembly baris demi baris dan melakukan dua fungsi berikut:
- Jalankan Kode Byte
- Lakukan panggilan yang sesuai ke perangkat keras yang mendasarinya
Dengan cara ini, program berjalan di JRE.
Mendownload JRE dan Menggunakannya
Dari perspektif penginstalan, kapan pun Anda mendownload JRE dan JDK , JDK akan menyertakan JRE yang kompatibel dengan versi, dan JRE akan menyertakan JVM default. Anda juga dapat mendownload JRE secara terpisah dari JDK, dan Anda dapat memilih dari berbagai JVM. Default berfungsi dengan baik untuk sebagian besar implementasi, terutama saat Anda memulai dengan Java.
Meskipun ada sisi konseptual dari JRE, dalam praktik dunia nyata, JRE hanyalah perangkat lunak yang diinstal di komputer, yang tujuannya adalah untuk menjalankan program Java Anda.
Sebagai pengembang, Anda sebagian besar akan bekerja dengan JDK dan JVM, karena itu adalah komponen platform yang Anda gunakan untuk mengembangkan dan menjalankan program Java Anda. Sebagai pengguna aplikasi Java, Anda akan lebih terlibat dengan JRE, yang memungkinkan Anda menjalankan program tersebut.
Dalam kebanyakan kasus, komputer Anda akan dilengkapi dengan Java yang terinstal, dan JRE akan disertakan dengan itu. Jika Anda perlu menginstal atau mengupgrade secara manual, Anda dapat mendownload JRE saat ini dari Oracle.
Java Runtime Environment diperbarui untuk setiap versi baru Java, dan nomor versinya sejajar dengan sistem versi platform Java, jadi misalnya JRE 1.8 menjalankan Java 8. Meskipun Anda memiliki berbagai paket JDK untuk dipilih (seperti Edisi Enterprise atau Edisi Standar) yang tidak terjadi pada JRE.
Sebagian besar komputer menjalankan JRE yang dikembangkan untuk Java SE, yang dapat menjalankan aplikasi Java apa pun terlepas dari bagaimana ia dikembangkan. Sebagian besar perangkat seluler dilengkapi JRE untuk Java ME, yang telah diinstal sebelumnya di perangkat seluler dan tidak tersedia untuk diunduh.
Setelah download JRE, Anda dapat berinteraksi dengannya di baris perintah dengan memasukkan java -version, yang akan memberi tahu Anda versi apa yang diinstal. Pada sistem POSIX, Anda selalu dapat memeriksa lokasi yang dipasang dengan which java.
Memori Java dan JRE
Memori Java terdiri dari tiga komponen: heap, stack dan metaspace (yang sebelumnya disebut permgen).
- Metaspace adalah tempat Java menyimpan info program Anda yang tidak berubah seperti definisi kelas.
- Heap space adalah tempat Java menyimpan konten variabel.
- Stack space adalah tempat Java menyimpan eksekusi fungsi dan referensi variabel.
Manajemen Memori di Java 8
Sampai Java 8, metaspace dikenal sebagai permgen. Selain menjadi nama yang jauh lebih keren, metaspace adalah perubahan signifikan dalam cara pengembang berinteraksi dengan ruang memori Java.
Sebelumnya, Anda akan menggunakan perintah java -XX:MaxPermSizeuntuk memantau ukuran ruang permgen. Dari Java 8 dan seterusnya, Java secara otomatis meningkatkan ukuran metaspace untuk mengakomodasi kebutuhan meta program Anda. Java 8 juga memperkenalkan flag baru MaxMetaspaceSize, yang dapat digunakan untuk membatasi ukuran metaspace.
Opsi memori lainnya, heap dan stack, tetap sama di Java 8.
Mengonfigurasi Heap Space
Heap room adalah bagian paling dinamis dari sistem memori Java. Anda dapat menggunakan tanda -Xmsdan -Xmxuntuk memberi tahu Java seberapa besar memulai heap, dan seberapa besar untuk mengizinkannya menjadi. Memahami cara menyetel tanda ini untuk kebutuhan program tertentu merupakan aspek penting dari manajemen memori di Java.
Idealnya adalah membuat tumpukan cukup besar untuk mencapai pengumpulan sampah yang paling efisien. Artinya, Anda ingin memberikan cukup memori untuk membiarkan program berjalan, tetapi Anda tidak ingin itu lebih besar dari yang diperlukan.
Mengonfigurasi Stack Space
Stack space adalah tempat pemanggilan fungsi dan referensi variabel diantrekan. Stack space adalah sumber kesalahan kedua paling terkenal dalam pemrograman Java: pengecualian stack overflow (yang pertama adalah pengecualian pointer nol). The stack overflow pengecualian menunjukkan bahwa Anda sudah kehabisan ruang stack karena terlalu banyak telah disediakan.
Biasanya, Anda akan mendapatkan stack overflow saat sebuah metode atau metode memanggil satu sama lain secara melingkar, sehingga mencurahkan jumlah panggilan fungsi yang terus bertambah ke dalam tumpukan.
Anda menggunakan -Xsssakelar untuk mengonfigurasi ukuran awal tumpukan. Tumpukan kemudian tumbuh secara dinamis sesuai dengan kebutuhan program.
Pemantauan Aplikasi Java
Meskipun pemantauan aplikasi adalah fungsi JVM, JRE menyediakan opsi konfigurasi, yang merupakan dasar yang diperlukan untuk pemantauan. Berbagai alat tersedia untuk memantau aplikasi Java, dari yang klasik (seperti perintah Unix top) hingga solusi pemantauan jarak jauh yang canggih seperti pemantauan infrastruktur Oracle.
Di antara opsi ini adalah profiler visual seperti VisualVM yang memungkinkan untuk memeriksa JVM yang sedang berjalan. Alat ini memungkinkan pelacakan hotspot dan kebocoran memori, serta memantau konsumsi memori secara keseluruhan di sistem Anda.
Kesimpulan
Java Runtime Environment adalah program di dalam disk yang memuat aplikasi Java untuk dieksekusi JVM. Saat Anda mengunduh Java Development Kit, otomatis Anda mendownload JRE dan setiap JRE menyertakan pustaka kelas inti Java, pemuat kelas Java, dan Mesin Virtual Java.
Sangat membantu untuk memahami bagaimana JVM, JDK dan JRE berinteraksi, terutama untuk bekerja di lingkungan cloud dan devops. Dalam lingkungan ini, JRE mengambil peran yang lebih kuat dalam pemantauan dan konfigurasi daripada dalam pengembangan aplikasi Java tradisional.
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.