# Wie kann man sehen, welche Applikationen mit java arbeiten?



## Gweadg (11. Nov 2011)

meine Frage ist, wie kann man im rechner sehen, welche programme mit java abhangig sind, und welche vesione benutzt.

ich habe im server mehrere versionen von java, und wegen sicherheit wuerde alte versionen loeschen aber ich weiss nicht welche applikationen braucht java und welche applikationen braucht welche version of java?

kann man das mit dos befehle oder irgendeinem tolls sehen.


----------



## L-ectron-X (11. Nov 2011)

Im JDK gibt es ein Disassembler-Tool.
Mit Eingabe des Kommandos 
	
	
	
	





```
javap -v MeineKlasse
```
 in der Befehlszeile kannst du die Version des JDK herausfinden, mit der eine Klasse kompiliert wurde.
Neben vielen anderen Informationen kannst du in den ersten Zeilen der Ausgabe die Major-Version des JDK entnehmen.
Dabei bedeutet

 major version 46 -> Java 1.2
 major version 47 -> Java 1.3
 major version 48 -> Java 1.4
 major version 49 -> Java 5
 major version 50 -> Java 6
 major version 51 -> Java 7


----------



## Beni (11. Nov 2011)

Bei 99.9% aller Java Programme kann man problemlos auf eine neuere Java Version wechseln. Rückwärtskompatibilität machts möglich. Nur wenn die Anwendung ganz seltsame Dinge macht, kann es zu Problemen kommen.

Wie werden die Anwendungen gestartet? Wenn es ein einfaches Konsolenkommando ist, wie "java ...", dann benutzen sowieso alle Anwendungen die neuste Version. Selbst wenn sie für eine ältere Version kompiliert wurden.


----------



## weadg (14. Nov 2011)

I finde jdk tool nicht. Wenn man  auf der java seite anschaut, sieht man aktulleste version java 6 update 29, beinhaltet das eigentlich nicht jre und jdk? oder muss man jre und jdk seperat runterladen?


es gibt sehr viele java and jre versionen, ich wuerde alle versionen loeschen und java 6 update 29 runterladen, wenn es jre beinhaltet. Das problem ist in Server gibt es spezielle program, wie voice platform aber besondere edition davon, die von einem programmierer geschrieben ist. Wenn diese Applikation nicht mit neue version funktioniert, dann das ganze kommunikation system in server nicht funktoniert und das ist eine grosse risiko.


----------



## L-ectron-X (15. Nov 2011)

Das Java 6 Update 29 ist eine JRE, also nur die Runtime-Umgebung.
Wenn du direkt an oder mit den Dateien rund um Java arbeiten (kompilieren, debuggen, disasseblen etc.) willst, brauchst du ein JDK. Im JDK ist immer auch eine _public JRE_ dabei, die du als Runtime außerhalb des JDKs brauchst, wenn du Java-Programme nicht nur entwickelst, sondern auch einsetzt und sonst keine JRE auf dem Rechner hast. Applets benutzen diese JRE auch.

Um das JDK herunter zu laden, kannst du den Link gleich hier auf der Seite benutzen.
Oben rechts unter _Nützliche Links_ findest du einen Menüeintrag unter _Downloads_ -> _Aktuelles JDK/JRE und Doku_


----------



## weadg (15. Nov 2011)

aber ich programmiere nicht mit java. dh. ich brauche keine jdk oder? aber du meinst, wenn ich erfahren will, welche Applikationen welche versionen von java arbeitet brauche ich java.
Wir haben im Server programme, die java geschrieben und programme mit jre braucht. ich moechte alle alte jre, java se, loeschen, und java 6 update 29 installieren. Ist das moeglich?
die Applikationen, die mit Java geschrieben , braucht jdk?
 ich habe nur angst, wenn einige Applikationen, die mit java geschrieben sind oder java benutzt, nur mit alte versionen komportabel sind. 



danke schoen fuer Ihre Hilfe.


----------



## L-ectron-X (15. Nov 2011)

Also, wenn du nicht programmieren willst, sondern nur Anwender bist, kannst du ganz getrost die alten JREs deinstallieren und eine aktuelle JRE installieren. Damit sind dann alle Java-Programme, die mit einem JDK bis einschließlich der installierten JRE-Version programmiert wurden lauffähig.


----------



## weadg (15. Nov 2011)

Danke dir

ich habe noch eine Frage. Wenn es alle programme mit neu installierte JRE funktionen lauffaehig ist, warum uberschreibt java alte versionen nicht? ich glaube , dass einige applikationen nur mit alte jre funktionfaehig sind oder? 

Wir hatten ein programmierer in company, er hat ein wichtige software mit java programmiert, den alle clients benutzen. Wir wissen nicht, wenn wir neue jre installieren (alle alte loeschen), ob sein programm laufen kann. Wir koennen nicht mit ihm kontaktieren.


----------



## L-ectron-X (17. Nov 2011)

Dann kannst du vorher einfach testen, ob dein Programm mit der aktuellen JRE zusammen arbeitet.
In der FAQ liegt ein Beitrag, der beschreibt, wie man ein Java-Programm von CD laufen lässt, ohne, dass eine JRE auf dem Zielrechner installiert ist. Das Gleiche geht auch mit einem USB-Stick.
Wenn du da nicht weiter kommst, kann ich dir da auch helfen.


----------



## weadg (18. Nov 2011)

kann man auch das fuer server machen, wenn es programm in server installiert ist? wir werden neue jre in server installieren.


----------



## L-ectron-X (18. Nov 2011)

Sicher, ein Server ist auch nur ein Computer.


----------



## weadg (18. Nov 2011)

das problem liegt daran, dass Applikation ein voice platform(phone system) ist. Diese voice platform benutzt 24 stunden fuer costomer service.
kann man das testen, waehrend der mitarbeiter diese voice platform benutzen? wenn wir java von cd starten, wie kann ich wissen, dass diese applikation von cd startete jre benutzt?, weil alte immer noch da waere.

danke


----------



## L-ectron-X (18. Nov 2011)

weadg hat gesagt.:


> kann man das testen, waehrend der mitarbeiter diese voice platform benutzen?


Kann ich nicht sagen, ich kenne das Programm nicht. Wahrscheinlich aber nicht, weil die Resouren bereits von der laufenden Version belegt sind.
Zum Testen müsste das laufende Programm beendet werden und das Programm von CD gestartet werden.
Man kann das aber am besten in einer Parallelumgebung oder besser einem extra System machen.



weadg hat gesagt.:


> wenn wir java von cd starten, wie kann ich wissen, dass diese applikation von cd startete jre benutzt?


Die Batchdatei im FAQ-Beitrag benutzt immer die JRE-Version auf der CD. Du kannst dir da sicher sein, dass alles komplett von CD kommt und auch das System nicht verändert wird - es sei denn das Programm schreibt Config-Dateien auf die Platte.


----------



## weadg (18. Nov 2011)

"Man kann das aber am besten in einer Parallelumgebung oder besser einem extra System machen."

was meinst du mit parallelumgebung oder extra system? andere server benutzen? dann muss man programm andere server installieren dann starten oder?

und wenn man parallelumgebung macht , muss es trotzdem laufende programm beendet werden?
und ich bin gast hier , soll ich anmelden fuer die forum beitrag zu sehen ueber java auf cd starten


----------



## L-ectron-X (18. Nov 2011)

weadg hat gesagt.:


> was meinst du mit parallelumgebung oder extra system?


Einfach die CD in jeden beliebigen Rechner stopfen und starten lassen.



weadg hat gesagt.:


> und wenn man parallelumgebung macht , muss es trotzdem laufende programm beendet werden?


Vermutlich wird das notwendig, ja.



weadg hat gesagt.:


> und ich bin gast hier , soll ich anmelden fuer die forum beitrag zu sehen ueber java auf cd starten


Nein, um diesen Beitrag zu lesen braucht man nicht zwingend einen Benutzerzugang zum Forum.
Den Beitrag findest du hier: http://www.java-forum.org/spezialth...gramme-starten-jar-bat-exe-cd.html#post147259

Wenn die Testumgebung bspw. unter Linux läuft brauchst du eine andere Batchdatei bzw. Shellscript.


----------



## weadg (18. Nov 2011)

@L-ectron-X

ist das moeglich, dass ich dir am wochenende online schreiben kann? es waere fuer mich besser dieses issue zu analisieren und loesungsmoeglichkeiten zu diskutieren.

danke schoen fuer deine hilfe


----------



## weadg (18. Nov 2011)

diese java Aplikation greift ein sql datanbank zu, and wir moechten sql server auch updaten oder neue kann man die gleiche methode benutzen,
java applikation auf cd brennen aus cd starten? dann braucht man wahrscheinlich ein test server oder rechner, die neue version von sql zu installieren oder?


----------



## L-ectron-X (19. Nov 2011)

Du kannst das Programm auf die CD brennen, es sollte auch mit einer aktuellen JRE laufen. Das Programm startest du nun auf einem Rechner, auf dem ein SQL-Server mit der passenden Datenbank installiert ist und läuft, und dann sollte es laufen. Auch wenn die Software mit einem älteren JDK geschrieben wurde, sollte sie in den meisten Fällen mit einem aktuellen JRE laufen.


----------

