WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 12.06.2007, 13:53   #1
void
Hero
 
Benutzerbild von void
 
Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811


Frage Java Klasse/Methode in JAR-File ausführen

hallo!

ich habe ein JAR-File mit einer bestimmten klasse, welche ich ausführen will. wie mache ich das (über die konsole (unter windows))?

danke!

EDIT: bzw. will ich eine statische methode dieser klasse ausführen... ist das überhaupt möglich?
____________________________________
nobody is perfect
void ist offline   Mit Zitat antworten
Alt 12.06.2007, 17:57   #2
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

Sicher ist das möglich. Die normale main Methode ist ja auch static (public static void main(String[] args))

Du kannst im manifest den "entry point" bestimmen, soweit ich weiß muß das eine main Methode sein. Du musst daher entweder die Klasse so verändern das sie eine ordendliche main Methode hat oder einfach eine zweite Klasse schreiben die sich um das starten kümmert.

Siehe:
http://java.sun.com/docs/books/tutor...ar/appman.html
http://java.sun.com/docs/books/tutorial/deployment/jar/
http://www.javaworld.com/javaworld/j...avatip127.html

jak
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona)
Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing.
\"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra)
jak ist offline   Mit Zitat antworten
Alt 12.06.2007, 19:16   #3
void
Hero
 
Benutzerbild von void
 
Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811


Standard

Danke, du hast recht - es funktioniert leider nicht einfach über Konfiguration bzw. Parameter. Es wird nach der main-Methode gesucht, es kann lediglich die Startklasse angegeben werden [The main method of the class specified in the Main-Class header is executed].

Somit bleibt mir nichts anderes übrig, als selber eine Klasse mit einer "main"-Methode zu schreiben, welche dann die gewünschte andere Methode aufruft.
Mühsam...
____________________________________
nobody is perfect
void ist offline   Mit Zitat antworten
Alt 14.06.2007, 10:39   #4
renew
Inventar
 
Registriert seit: 22.10.2000
Alter: 41
Beiträge: 5.552


Standard

Das ist aber notwendig, weil du musst ja eine Instanz von der Klasse erstellen, die du "ausführen" möchtest.
Und dazu ist halt Code erforderlich.
renew ist offline   Mit Zitat antworten
Alt 14.06.2007, 12:48   #5
void
Hero
 
Benutzerbild von void
 
Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811


Standard

hmmm, wenn es eine statische methode ist nicht
in meiner main-methode instanziere ich nämlich auch nichts...
aber generell hast du natürlich recht.
____________________________________
nobody is perfect
void ist offline   Mit Zitat antworten
Alt 18.06.2007, 06:19   #6
Who-T
Elite
 
Registriert seit: 01.08.2000
Beiträge: 1.395


Who-T eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von void
hmmm, wenn es eine statische methode ist nicht
in meiner main-methode instanziere ich nämlich auch nichts...
aber generell hast du natürlich recht.
Du instanziierst vielleicht nichts, aber die JVM schon. main is fuer die JVM der entry point der application, mit einer standardisierten schnittstelle, und bis deine main aufgerufen wird ist die ganze umgebung geladen worden, inclusive deiner klasse.
____________________________________
Whoever built humanity left in a major design flaw: it was the tendency to bend at the knees.
Who-T ist offline   Mit Zitat antworten
Alt 24.06.2007, 08:25   #7
restinpeace
Jr. Member
 
Registriert seit: 01.01.2004
Alter: 47
Beiträge: 60


Standard Java Web Start

... wäre auch empfehlenswert, sofern Du das Programm in einem Intranet zur Verfügung stellen musst.

Es ist doch der wesentlich elegantere Weg, um eine Java-Applikation zu starten.

Des weiteren solltest ein Deploy-Tool (zB ANT) verwenden, welches komfortable Möglichkeiten für das Deployment zur Verfügung stellt.
restinpeace ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:32 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag