Java Virtual Machine


Die Java Runtime Environment (JRE) beinhaltet die Java Virtual Machine (JVM) und ist eine Laufzeitumgebung für Java Programme.
 
 
Bitte nicht verwechseln mit einer Virtualisierungssoftware, wie z.B. VirtualBox von SUN, VMware-Player oder VirtualPC von Microsoft (mehrere virtuelle Betriebssysteme auf einem Rechner, z.B. Windows 98, 2000, XP und Linux).
 
Unterscheidung:
- Eine Virtuelle Maschine ( abgekürzt VM ) ist ein Betriebssystem und wird als Gastsystem in einem sogenannten Hostsystem ausgeführt. Siehe Wikipedia
- Eine Java Virtuelle Maschine ( abgekürzt Java VM oder JVM ) ist Teil einer Laufzeitumgebung ( JRE ) die für das Ausführen von Java Programmen und Java Applets verantwortlich ist. Siehe Wikipedia
 
Möchten Sie keine Java Programme oder Java Applets ausführen, so benötigen Sie auch keine Java Laufzeitumgebung ( JRE ) auf Ihrem Rechner.
 
 
Bemerkung:
- JavaScript ist kein Java, diese Begriffe werden oftmals verwechselt. JavaScript ist eine Scriptsprache und läuft nur unter der Kontrolle eines Browsers und nicht in einer Java Virtual Maschine! Siehe Wikipedia
 
- Servlets, das sind Java Programme die auf einem Web-Server ablaufen und z.B. dynamische Html-Seiten erzeugen können. Servlets benötigen eine Virtual Maschine! Siehe Wikipedia
 
- JavaServer Pages oder JSP, ist nicht JavaScript, sind Java Programme die in Html-Code eingebettet sind und auf einem Web-Server als Servles konvertiert ablaufen. Hiermit können ebenfalls dynamische Html-Seiten erzeugt werden. Siehe Wikipedia
 
 
Die Java Virtual Machine führt den so genannten Java-Bytecode aus. Bytecode entsteht durch Compilierung von Programmen, die z.B. in Java geschrieben sind. Durch die Java Virtual Machine und des Bytecodes, sind plattformunabhängige Programme möglich.
 
Die Java Virtual Machine dient dabei als Schnittstelle zwischen Java-Programm und Betriebssystem der Maschine. Der große Vorteil einer Java Virtual Machine ist aber neben der Plattformunabhängigkeit auch der Gewinn an Sicherheit. Eine JVM überwacht zur Laufzeit die Ausführung des Programms, verhindert also z.B. dass ein Programm in fremde Speicherbereiche liest oder schreibt.
 
Java Virtual Machines von SUN stehen für alle gängigen Betriebssysteme zur Verfügung (z.B. Windows, Linux, usw.).
 
Für Windows-Vista ist die JRE ab der Java Version 1.6.X von SUN zu verwenden,
Windows 7 wird von SUN ab der Java-Version 1.6.0_16 als 32 und 64-Bit unterstützt, siehe:
 
Java für Vista or Win 7
 
 
Java Virtual Machine für Windows Vista und Windows 7 (Anleitung)
 
 
Java virtual machine for windows vista and Windows 7 (instructions)
 
 
 
 
java und Windows 64 or 32 Bit
 
Java Runtime Environment (JRE) für Windows 64-Bit und 32-Bit Betriebssysteme
 
Windows XP / Vista / 7 haben 2 Internet Explorer, eine 32 und 64-Bit Version.
 
Übersicht von SUN (ORACLE) über vorhandene 32/64-Bit JREs und JDKs
 
 
Die letzte Java Version von Microsoft ist der Sprachstandard 1.1.4, dieser wurde nicht mehr weiterentwickelt.
Diese alte Version konnte bis XP SP 1 installiert werden.
Für Windows XP ab SP-1a  wird keine Microsoft Java Virtual Maschine mehr mitgeliefert!
In Windows Vista und 7 kann diese alte Java Version nicht mehr verwendet werden!
Mit virtuellen XP Rechnern besteht dennoch eine Möglichkeit
 
 
Sie können eine aktuelle JRE von SUN installieren:
Auch für Linux, Solaris, Windows 2000 (SP4+), Windows XP (SP1 SP2), Windows 2003, Windows Server, Windows Vista und
Windows 7.
 
 http://www.java.com/de/download/manual.jsp
 http://www.java.com/en/download/manual.jsp
 
Für Windows 98 und Windows ME - Rechner sind die älteren JRE's bis zur Version 1.5.X zu verwenden
 
Einen überblick über JREs und JDKs im Archiv bei SUN ORACLE, siehe hier ==> http://java.sun.com/products/archive/index.html
- JRE = Java Runtime Environment, zum Ausführen von Java Applets im Browser und Java Applikationen.
- JDK = Java Development Kit, zum Entwickeln von Java Programmen.
 
 
Browser wie Firefox, Opera, Safari (Windows)  usw. funktionieren nur mit dem Plug-In von SUN, der IE natürlich auch.
 
Die x64 Versionen von Windows haben 2 IE, eine 32 und 64-Bit Version.Siehe z.B. Windows Vista
 
übersicht von SUN ORACLE über vorhandene 32/64-Bit JREs und JDKs
 

 
Java Installieren oder deinstallieren (löschen):
 
- Mac OS X
 

 
Java deinstallieren (Löschen):
 
- Windows
 

 
Java deinstallieren (Löschen):
 
- Linux
 

 
Ist Java auf ihrem Rechner korrekt installiert?
 
Java Testseite von SUN Oracle:
 
Testseite
       Ergebnis Architektur: x86 weist darauf hin dass Sie den Test mit einem 32-Bit Browser aufgerufen haben.
       Ergebnis Architektur: amd64 weist darauf hin dass Sie den Test mit einem 64-Bit Browser/System aufgerufen haben.
 
Test page
 
 

 

Wird das Applet nicht dargestellt, sind auch folgende 9 Punkte zu überprüfen:

 
1) Auf Ihrem System ist keine Java Virtual Maschine (JVM) installiert?
 
Wenn eine JVM vorhanden ist, muss im Browser, in den Optionen / Sicherheitseinstellungen "Java" aktiviert sein.
 
 -----------------------------------------------------------
 
2) Einstellung beim IE mit der alten 1.1.4 Microsoft-VM
      / Extra
       / Internetoptionen
        / Erweitert
          / Microsoft VM
          Java JIT-Compiler aktiviert  (Neustart erforderlich)
 
    Zusätzliche Einstellung  beim IE mit der alten 1.1.4 Microsoft-VM unter:  ==>>  Siehe Bild
      / Extra
       / Internetoptionen...
        / Sicherheit
         / Internet
          / Stufe anpassen
           / Microsoft-VM
            / Java-Einstellungen
              Hohe oder Mittlere Sicherheit auswählen   ( "Java deaktivieren" verhindert die Ausführung des Applets).
 
    -----------------------------------------------------------
 
     Einstellung beim IE mit einer Sun-VM unter:
      / Extra
       / Internetoptionen
        / Erweitert
          / Java (Sun)
          JRE 1.x.x_xx für <applet> (Neustart erforderlich)
 
     Internet Explorer 9 kann Java blocken wenn Haken bei ActivX-Filterung:
       / Extra
            / Sicherheit
                / ActivX-Filterung
   
     Einstellung beim Netscape mit einer Sun-VM unter:
      / Bearbeiten
       / Einstellungen
        / Erweitert
          Java aktivieren
   
     Einstellung beim Firefox mit einer Sun-VM unter:
      / Extra
       / Einstellungen
        / Web-Features
          Java aktivieren
         
     Einstellung beim Opera mit einer Sun-VM unter:
      / Extra
       / Einstellungen
        / Multimedia
          Java aktivieren
         
     Einstellung beim Safari ( Mac OS X ) mit einer Mac-VM
      / Preferences
       / Security
        / Web Content
          Enable Java
         
     Einstellung beim Konqueror ( Linux ) mit einer Sun-VM
      / Einrichten
       / Konqueror einrichten
        / Java & JavaScript
         / Globale Einstellungen
          Java global aktivieren
 
3)   Blockiert bei Ihnen eine vorhandene Firewall, Proxy-Server oder sonstige Sicherheitssoftware das Java-Applet 
      ( CAB-Archive, JAR-Archive, *.class-Dateien und *.obj-Dateien ) ?
      Firewall Sicherheitsmechanismen haben oftmals zu scharfe Kriterien bei der Prüfung des Applet-Codes!
 
      Da das Applet nach dem Laden weitere Daten (Textdateien) für die Darstellung benötigt,
      könnte auch diese Client <==> Server-Verbindung geblockt werden!!!
      Hierbei kann meistens nur ein System-Administrator weiterhelfen!
 
4)  Möglich wäre auch eine fehlende Angabe beim Java Control Panel (Proxyserver verwenden)
     unter Start / Einstellungen / Systemsteuerung / Java. Siehe Bild
 
5)  Manche Behörden oder Firmen, blockieren das Ausführen von Java-Applets.
     Auch hierbei kann nur ein System-Administrator Auskunft geben!
 
6)  Unter Umständen wird bei Ihnen die Darstellung als Popup-Fenster blockiert !
     Sie haben spezielle Popup-Blocker installiert?
 
7)   Leeren Sie den Browser-Cache und den Java Cache siehe unter Punkt 8)
      dann starten Sie den Browser erneut.
      Durch Änderungen der Verzeichnisstruktur auf unserem WEB-Server könnten
      die Links im Cache auf veraltete Verzeichnisse verweisen!
 
     Internetexplorer:
      / Extra
       / Internetoptionen...
        / Allgemein
            Dateien löschen
 
     Netscape:
      / Bearbeiten
       / Einstellungen
        / Navigator
          / History
              History löschen
 
     Firefox:
      / Extra
       / Einstellungen
        / Datenschutz
            Cache / Löschen
 
     Safari ( Windows XP, Vista ):
      / Bearbeiten
       / Cache leeren...
 
     Safari ( Mac OS X ):
      / Safari
       / Cache leeren
 
     Opera:
      / Extra
       / Einstellungen
        / Verlauf und Cache
            Cache jetzt leeren
 
 
8)   Java-Cache
 
      Leeren Sie den Java-Cache ("Dateien löschen" ) im Java Control Panel wenn Sie eine SUN - VM verwenden,
      sofern der Cache aktiviert ist: ( Haken bei "Temporäre Dateien auf dem Computer belassen" ).
      Starten Sie das Applet erneut. In diesem Cache könnten sich noch ältere Java Programmversionen oder
      sonstige Ressourcen befinden.
      Mit dem Java - Cache können mehrfach verwendete Java-Programme schneller geladen werden,
      da diese dann nicht immer neu über das Netz geholt werden müssen.
      Dies hat aber den Nachteil, dass sie dadurch eventuell nicht die neuesten Versionen vom Webserver verwenden!
 
      In Windows:
             Siehe Windows - Java Cache
 
      Im Mac OS X:
             Siehe Mac OS X - Java Cache
 
      In Linux:
             Siehe Linux - Java Cache
 
 
 
9)   64 Bit System
       Wenn Sie ein Java Applet mit einem 64 Bit Browser starten muss auch eine 64 Bit JRE (Java Plug-In) installiert sein.
       Wenn Sie ein Java Applet mit einem 32 Bit Browser starten muss auch eine 32 Bit JRE (Java Plug-In) installiert sein.
 
 

Java-Applet über Browser laden und starten

 
Ungefährer Ablauf:
 
1) Der User gibt im Browser eine Internetadresse ein.
2) Der Browser holt vom entsprechenden Server diese geforderte Internetseite.
3) Der Browser überprüft dann diese Html-Seite ob sich darin ein "APPLET=" Tag befindet.
4) Wenn ja, dann fordert er das installierte Java-PlugIn auf den nächsten Schritt zu übernehmen.
5) Das java-PlugIn startet dann die JVM (z.B. Java.exe in Windows).
6) Der ClassLoader läd das Java Applet vom Server.
7) Dabei wird geprüft ob es sich um gültige Class-Dateien handelt evt. im gepackten Jar Archiv.
...Jar-Archive können Class-Dateien und weitere Ressorcen wie z.B. Bild- oder Text-Dateien beinhalten.
8) Wenn Prüfung ok, werden die Klassen in den Speicher geladen und das Applet im Browser gestartet.
 
 
 
Jede unterschiedliche Rechnerarchitektur benötigt seine spezielle Java VM.
Für die meisten Java-Webanwendungen reicht zur Zeit die 32 Bit JVM (JRE) mit einem 32 Bit Webbrowser.
Wird der 64 Bit Browser verwendet benötigt man für Java-Applet Darstellungen natürlich eine 64 Bit JVM (JRE).
Windows 64 Bit Betriebssysteme XP / Vista / 7 haben 2 Internet Explorer, 32 und 64 Bit. Für Java-Applets können hier auch beide 32 / 64 Bit JVMs installiert werden.
 

 

Auf Rechner ohne Java Virtual Maschine (JVM) oder (JRE) können keine Java-Applets ausgeführt werden. Von SUN kann eine JRE nachinstalliert werden:  http://www.java.com/de/download/manual.jsp
 
 

Java-Applikation starten

 
Eine Java-Applikation ist ein Java-Programm das eigenständig ohne Browser gestartet wird, lauffähig ist dieses Programm jedoch nur mit einer JRE (Java Virtual Maschine). Beispiele über Startvarianten unter Windows
 
 

Plattformunabhängigkeit

 
Mit der Programmiersprache Java kann man plattformunabhängige Programme schreiben. Nicht jedes Java Programm ist automatisch plattformunabhängig.
 
Wenn das Java Programm (Applet) im Internet für alle User zur Verfügung stehen soll, ist darauf zu achten, dass das Programm auch wirklich auf den meistverwendeten Betriebssystemen (Windows, Linux und Mac) fehlerfrei läuft.
Dazu ist es erforderlich das Programm unter den entsprechenden Betriebssystemen ausführlich zu testen,
 
Eine Hürde besteht auch noch darin, dass die User im Internet mit unterschiedlichen Versionen der Java Virtual Maschines ausgestattet sind.
Unter Windows:
    1. Microsoft Versionen 1.1.4 (2009 nur noch ca. 6% aller Zugriffe auf das Java-Applet »interMaptiv Baden-Württemberg« )
        ( Diese JVM wird immer mehr verschwinden mit zunehmender Verbreitung von Windows Vista und Windows 7)
    2. Die ganze Bandbreite der SUN-JRE Versionen 1.3.X bis 1.5.X (bis Windows XP verwendbar)
    3. Die SUN Version 1.6.X für Windows 2000 (SP4+), Windows XP (SP1 SP2), Windows 2003, Windows Vista
    4. Die Version ab 1.6.0_12 gibt es auch als 64-Bit JVM für Vista 64 Bit
    5. Die Version ab 1.6.0_16 ist für Windows 7, 32/64 Bit verwendbar
 
Unter Linux: Die SUN Versionen 1.4.X bis 1.6.X
 
Bei Mac OS X: Version 1.3.X bis 1.6.X
 
Siehe Statistik der verwendeten Java-VMs beim Aufruf von interMaptiv:
    JVM Statistik 2008
    JVM Statistik 2009
 
Ein Problem kann auftreten, wenn z.B. ein Applet das unter der Java VM-Version 1.1.4 arbeitet, mit einem Servlet kommuniziert, das unter der Java VM-Version > 1.3 läuft und dabei Klassen über die Leitung verschickt.
Hierbei ist es möglich, dass diese Klassen beim Empfänger nicht mehr akzeptiert werden weil sie in den neueren Versionen anders implementiert wurden.

Darstellung eines Applet unter 3 verschiedenen Betriebssystemen

 

Beispiel 1 unter Windows:

 

Java Applet Beispiele

 

Beispiel 2 unter Linux:

 

Java Applet Beispiele

 

Beispiel 3 unter Mac OS X:

 

Java Applet Beispiele

 


 
 
Java für Vista or Win 7
 
 
Java Virtual Machine für Windows Vista und Windows 7 (Anleitung)
 
 
Java virtual machine for windows vista and Windows 7 (instructions)
 
 
 

Java Applet Beispiele / Examples

 
 
 Home    -    Java Applet Beispiele
 
 
 Home    -    Java applet examples