Java-Programme auf einem Zielrechner ohne JRE direkt von einer CD starten: Unterschied zwischen den Versionen
(→Schritt 3) |
K |
||
(17 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Du hast ein Java-Programm, welches du gerne deinen Kunden, Freunden oder Bekannten vorstellen möchtest, weißt aber nicht, ob eine und welche [[JRE]]-Version auf deren Rechner installiert ist? | Du hast ein Java-Programm, welches du gerne deinen Kunden, Freunden oder Bekannten vorstellen möchtest, weißt aber nicht, ob eine und welche [[JRE]]-Version auf deren Rechner installiert ist? | ||
− | Dann kann dir diese Anleitung dabei helfen, eine CD zu erzeugen, die nach dem Einlegen ins CD-Laufwerk automatisch auf einem Windows-System dein Java-Programm startet. Das Interessante daran: Der Zielrechner braucht nicht mal eine JRE installiert zu haben, denn die brennen wir gleich mit auf die CD. | + | Dann kann dir diese Anleitung dabei helfen, eine CD zu erzeugen, die nach dem Einlegen ins CD-Laufwerk automatisch auf einem Windows-System dein Java-Programm startet. <br> |
+ | Auf die gleiche Art funktioniert das im Folgenden Beschriebene bspw. mit einem USB-Stick. | ||
+ | |||
+ | '''Das Interessante daran: Der Zielrechner braucht nicht mal eine JRE installiert zu haben, denn die brennen wir gleich mit auf die CD.''' | ||
==Schritt 1 - Vorbereitung== | ==Schritt 1 - Vorbereitung== | ||
− | Du erstellst dir auf deiner Festplatte ein temporäres Verzeichnis, in welches du zunächst dein JRE-Verzeichnis | + | Du erstellst dir auf deiner Festplatte ein temporäres Verzeichnis, in welches du zunächst dein JRE-Verzeichnis hinein kopierst. Dann erstellst du in diesem Verzeichnis eine Datei namens '''autorun.inf''' mit folgendem Inhalt: |
− | + | <syntaxhighlight lang="ini"> | |
− | < | + | [autorun] |
− | [autorun] | + | open=autostart.bat |
− | open=autostart.bat | + | icon=icon.ico |
− | icon=icon.ico | + | </syntaxhighlight> |
− | </ | ||
− | Das optionale Icon muss hier im Verzeichnis liegen, wo auch die autorun.inf zu finden ist (Rootverzeichnis) und wird angezeigt, sobald die CD vom Laufwerk eingelesen wird. | + | Das optionale Icon muss hier im Verzeichnis liegen, wo auch die '''autorun.inf''' zu finden ist (Rootverzeichnis) und wird angezeigt, sobald die CD vom Laufwerk eingelesen wird. |
+ | Sollte die CD unter mehreren Betriebssystemen starten können, so ist es wichtig, die JREs für das jeweilige Betriebssystem in einen separaten Ordner zu kopieren. | ||
+ | Die Startverknüpfung wird dann, wie im Folgenden beschrieben, mit einem Batch-Skript hergestellt. | ||
==Schritt 2 - Das Startskript== | ==Schritt 2 - Das Startskript== | ||
− | Außerdem brauchst du noch ein Shell-Skript (unter Windows eine Batch-Datei) das dein Programm startet. Unter Windows benennst Du die Batch-Datei am besten '' | + | Außerdem brauchst du noch ein Shell-Skript (unter Windows eine Batch-Datei) das dein Programm startet. Unter Windows benennst Du die Batch-Datei am besten ''autorun.bat''. Unter Linux muss die Datei ''autorun'' heißen. |
Mit einem Texteditor erzeugst du dazu eine ganz normale Textdatei mit folgendem Inhalt: | Mit einem Texteditor erzeugst du dazu eine ganz normale Textdatei mit folgendem Inhalt: | ||
− | ===Für Windows ( | + | ===Für Windows (autorun.bat)=== |
− | + | <syntaxhighlight lang="ini" line="true"> | |
− | < | + | @echo off |
− | @echo off | ||
− | rem Bitte den Pfad zur JRE anpassen! | + | rem Bitte den Pfad zur JRE anpassen! |
− | set CDJRE=.\java_vm\jre1.6.0_12\bin | + | set CDJRE=.\java_vm\jre1.6.0_12\bin |
− | rem Start einer jar-Datei | + | rem Start einer jar-Datei |
− | start %CDJRE%\javaw.exe -jar DeinJar.jar | + | start %CDJRE%\javaw.exe -jar DeinJar.jar |
− | rem Start einer class-Datei | + | rem Start einer class-Datei |
− | rem start %CDJRE%\javaw.exe DeinProgramm | + | rem start %CDJRE%\javaw.exe DeinProgramm |
− | rem Umgebungsvariable wieder löschen | + | rem Umgebungsvariable wieder löschen |
− | set CDJRE= | + | set CDJRE= |
− | rem Console schließen | + | rem Console schließen |
− | exit | + | exit |
− | </ | + | </syntaxhighlight> |
===Für Linux (autorun)=== | ===Für Linux (autorun)=== | ||
+ | <syntaxhighlight lang="ini" line="true"> | ||
+ | #! /bin/bash | ||
− | + | # change CWD to the directory this script is placed | |
− | + | case "$0" in | |
+ | /*) self=$0 ;; | ||
+ | *) self=$(pwd)/$0 ;; | ||
+ | esac | ||
+ | selfdir=$( (cd "${self%/?*}" && pwd) ) | ||
+ | [ "${selfdir}" ] || exit 1 | ||
+ | cd "${selfdir}" | ||
− | # | + | # The CD's very own JRE/bin directory |
− | + | # TODO: Pfad anpassen! | |
− | + | jre_bin="./java_vm/jre1.6.0_12/bin" | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | # | + | # Start a selfcontained JAR file |
− | + | exec "${jre_bin}/java" -jar DeinProgramm | |
− | jre_bin | ||
− | # Start a | + | # Start a Main class from the classpath |
− | # TODO: | + | # TODO: Diese Zeile statt der vorhergehenden benutzen, wenn |
− | exec "${jre_bin}/java" - | + | # nicht aus einem eigenständigen JAR gestartet werden soll |
+ | # TODO: Klassennamen und classpath eintragen | ||
+ | # exec "${jre_bin}/java" -cp MeinClassPath mein.package.MeineMainKlasse | ||
+ | </syntaxhighlight> | ||
− | + | Die Skripte müssen natürlich an den ausgewiesenen Stellen noch an deine Gegebenheiten angepasst werden und müssen im Wurzelverzeichnis (zum Icon und der autorun.inf) abgelegt werden. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Schritt 3 - Jar-Datei und Start-Skript== | |
− | |||
− | ==Schritt 3 == | ||
Kopiere nun noch dein Programm, welches vorzugsweise eine [[JAR-Datei]] sein sollte, hinzu. | Kopiere nun noch dein Programm, welches vorzugsweise eine [[JAR-Datei]] sein sollte, hinzu. | ||
Es kann aber auch eine normale .class-Datei sein. In dem Fall muss in der Batch-Datei die Zeile 7 auskommentiert und Zeile 10 durch entfernen des remark (rem) aktiviert werden, bzw. Zeile 18 des Linux Shell-Skripts mit '#' auskommentiert und Zeile 24 durch entfernen des Kommentarzeichens '#' aktiviert werden. | Es kann aber auch eine normale .class-Datei sein. In dem Fall muss in der Batch-Datei die Zeile 7 auskommentiert und Zeile 10 durch entfernen des remark (rem) aktiviert werden, bzw. Zeile 18 des Linux Shell-Skripts mit '#' auskommentiert und Zeile 24 durch entfernen des Kommentarzeichens '#' aktiviert werden. | ||
− | Auch [[Packages]] sind möglich, dementsprechend | + | Auch [[Packages]] sind möglich, dementsprechend sind u.U. nur die Shell-Skripte anzupassen. |
− | ==Schritt 4 == | + | ==Schritt 4 - Kontrolle der Verzeichnisstruktur== |
Zur Kontrolle: Deine Verzeichnisstruktur sollte jetzt folgendermaßen aussehen: | Zur Kontrolle: Deine Verzeichnisstruktur sollte jetzt folgendermaßen aussehen: | ||
− | + | [.] | |
− | [.] | + | | icon.ico |
− | | icon.ico | + | | autorun.bat |
− | | autorun.bat | + | | autorun.inf |
− | | autorun.inf | + | | autorun |
− | | autorun | + | | DeinProgramm.jar |
− | | DeinProgramm.jar | + | | |
− | | | + | |__[java_vm] |
− | |__[java_vm] | ||
| | | | ||
|__[jre1.6.0_12] | |__[jre1.6.0_12] | ||
Zeile 93: | Zeile 93: | ||
| | | | ||
|__[lib] | |__[lib] | ||
− | + | ||
==Schritt 5 - CD brennen== | ==Schritt 5 - CD brennen== | ||
Das Ganze brennst du nun mit einem Brennprogramm deiner Wahl als Daten-CD. | Das Ganze brennst du nun mit einem Brennprogramm deiner Wahl als Daten-CD. | ||
− | + | {{Fragen stellen}} | |
+ | |||
[[Kategorie:Java Verschiedenes]] | [[Kategorie:Java Verschiedenes]] | ||
+ | [[Kategorie:Tutorials (Java)]] | ||
+ | |||
+ | --[[Benutzer:L-ectron-X | L-ectron-X]] (03.12.2005, 10:03) |
Aktuelle Version vom 11. Juni 2019, 08:53 Uhr
Du hast ein Java-Programm, welches du gerne deinen Kunden, Freunden oder Bekannten vorstellen möchtest, weißt aber nicht, ob eine und welche JRE-Version auf deren Rechner installiert ist?
Dann kann dir diese Anleitung dabei helfen, eine CD zu erzeugen, die nach dem Einlegen ins CD-Laufwerk automatisch auf einem Windows-System dein Java-Programm startet.
Auf die gleiche Art funktioniert das im Folgenden Beschriebene bspw. mit einem USB-Stick.
Das Interessante daran: Der Zielrechner braucht nicht mal eine JRE installiert zu haben, denn die brennen wir gleich mit auf die CD.
Inhaltsverzeichnis
Schritt 1 - Vorbereitung
Du erstellst dir auf deiner Festplatte ein temporäres Verzeichnis, in welches du zunächst dein JRE-Verzeichnis hinein kopierst. Dann erstellst du in diesem Verzeichnis eine Datei namens autorun.inf mit folgendem Inhalt:
[autorun]
open=autostart.bat
icon=icon.ico
Das optionale Icon muss hier im Verzeichnis liegen, wo auch die autorun.inf zu finden ist (Rootverzeichnis) und wird angezeigt, sobald die CD vom Laufwerk eingelesen wird. Sollte die CD unter mehreren Betriebssystemen starten können, so ist es wichtig, die JREs für das jeweilige Betriebssystem in einen separaten Ordner zu kopieren. Die Startverknüpfung wird dann, wie im Folgenden beschrieben, mit einem Batch-Skript hergestellt.
Schritt 2 - Das Startskript
Außerdem brauchst du noch ein Shell-Skript (unter Windows eine Batch-Datei) das dein Programm startet. Unter Windows benennst Du die Batch-Datei am besten autorun.bat. Unter Linux muss die Datei autorun heißen. Mit einem Texteditor erzeugst du dazu eine ganz normale Textdatei mit folgendem Inhalt:
Für Windows (autorun.bat)
1 @echo off
2
3 rem Bitte den Pfad zur JRE anpassen!
4 set CDJRE=.\java_vm\jre1.6.0_12\bin
5
6 rem Start einer jar-Datei
7 start %CDJRE%\javaw.exe -jar DeinJar.jar
8
9 rem Start einer class-Datei
10 rem start %CDJRE%\javaw.exe DeinProgramm
11
12 rem Umgebungsvariable wieder löschen
13 set CDJRE=
14
15 rem Console schließen
16 exit
Für Linux (autorun)
1 #! /bin/bash
2
3 # change CWD to the directory this script is placed
4 case "$0" in
5 /*) self=$0 ;;
6 *) self=$(pwd)/$0 ;;
7 esac
8 selfdir=$( (cd "${self%/?*}" && pwd) )
9 [ "${selfdir}" ] || exit 1
10 cd "${selfdir}"
11
12 # The CD's very own JRE/bin directory
13 # TODO: Pfad anpassen!
14 jre_bin="./java_vm/jre1.6.0_12/bin"
15
16 # Start a selfcontained JAR file
17 exec "${jre_bin}/java" -jar DeinProgramm
18
19 # Start a Main class from the classpath
20 # TODO: Diese Zeile statt der vorhergehenden benutzen, wenn
21 # nicht aus einem eigenständigen JAR gestartet werden soll
22 # TODO: Klassennamen und classpath eintragen
23 # exec "${jre_bin}/java" -cp MeinClassPath mein.package.MeineMainKlasse
Die Skripte müssen natürlich an den ausgewiesenen Stellen noch an deine Gegebenheiten angepasst werden und müssen im Wurzelverzeichnis (zum Icon und der autorun.inf) abgelegt werden.
Schritt 3 - Jar-Datei und Start-Skript
Kopiere nun noch dein Programm, welches vorzugsweise eine JAR-Datei sein sollte, hinzu. Es kann aber auch eine normale .class-Datei sein. In dem Fall muss in der Batch-Datei die Zeile 7 auskommentiert und Zeile 10 durch entfernen des remark (rem) aktiviert werden, bzw. Zeile 18 des Linux Shell-Skripts mit '#' auskommentiert und Zeile 24 durch entfernen des Kommentarzeichens '#' aktiviert werden. Auch Packages sind möglich, dementsprechend sind u.U. nur die Shell-Skripte anzupassen.
Schritt 4 - Kontrolle der Verzeichnisstruktur
Zur Kontrolle: Deine Verzeichnisstruktur sollte jetzt folgendermaßen aussehen:
[.] | icon.ico | autorun.bat | autorun.inf | autorun | DeinProgramm.jar | |__[java_vm] | |__[jre1.6.0_12] | |__[bin] | |__[lib]
Schritt 5 - CD brennen
Das Ganze brennst du nun mit einem Brennprogramm deiner Wahl als Daten-CD.
Fragen
Das Thema wurde nicht ausreichend behandelt? Du hast Fragen dazu und brauchst weitere Informationen? Lass Dir von uns helfen!
- Besuche uns im Byte-Welt-Forum
- Besuche unseren Chat
Wir helfen dir gerne!
Dir hat dieser Artikel gefallen? Oder Du hast Fehler entdeckt und möchtest zur Berichtigung beitragen? Prima! Schreibe einen Kommentar!
Du musst angemeldet sein, um einen Kommentar abzugeben.
-- L-ectron-X (03.12.2005, 10:03)