JVM i JRE
JVM vs JRE
Java je programski jezik na visokoj razini koji je jedinstven u načinu na koji se na njoj pisani programi mogu izvršiti na gotovo svakoj platformi. Ali prije nego što pokrenete program na računalu, morate instalirati određeni softver; neki ga ljudi nazivaju JVM, dok drugi koriste JRE. Iako se većina ljudi odnosi na istu stvar, postoje određene razlike između JVM i JRE. JVM je zapravo aplikacija koja je dio JRE-a. Da biste pokrenuli aplikaciju, potreban vam je JRE, koji sadrži JVM.
JVM označava Java virtualni stroj i stvara virtualno računalo koje razumije kod s kojim se pišu Java programi. Java programi nisu napisani na OS specifičan način. To mu omogućuje da se pokreće na bilo kojoj platformi, ali zahtijeva korištenje JVM-a da u osnovi prevede naredbe iz Java bajteksa na specifični kôd stroja.
Nisu sve potrebne za sve programe sadržane unutar JVM-a. Neke se nalaze u skupinama paketa. Paketi kao što su AWT, Swing, lang i mnogi drugi pružaju složenije mogućnosti JVM-u. Kada kombinirate sve ove datoteke podrške zajedno s JVM, to je ono što se zove JRE ili Java Runtime Environment. U najjednostavnijim terminima, JRE je kombinacija JVM-a i mnogih pratećih datoteka poput paketa koji pružaju okruženje iz koje se može pokrenuti Java program.
Budući da krajnji korisnik vjerojatno neće urediti ili stvoriti Java aplikacije, JRE ne sadrži nikakve datoteke vezane uz kodiranje, provjeru i ispravljanje Java aplikacija; sve što se nalazi u drugom Java programskom paketu. To smanjuje veličinu JRE da bi lakše i brže za većinu korisnika preuzelo i instaliralo JRE. Svaka softverska platforma (npr. Windows, Linux, Mac) ima vlastiti JRE i JVM, koji će raditi samo na njemu i ni u kojem drugom. Zato trebate biti svjesni preuzimanja određenog JRE za OS koji imate. Svaka JRE verzija uvijek bi sadržavala komplementarni JVM pa nema sumnje o dobivanju pogrešnog JVM-a.
Sažetak:
1.JVM je samo jedan dio JRE 2.JRE sadrži Java klase paketa osim JVM-a