Java Programm starten + Dasselbe auf anderem OS

Diskutiere mit über: Java Programm starten + Dasselbe auf anderem OS im Mac OS X Entwickler, Programmierer Forum

  1. Mondmann

    Mondmann Thread Starter MacUser Mitglied

    Beiträge:
    2.801
    Zustimmungen:
    81
    Registriert seit:
    21.07.2004
    So,jetzt schreibe ich nun den 10 000 Thread über Java.
    Ich habe ein kleines Progrämmchen geschrieben mit XCode.
    Ich kompiliere es und starte es und es funktioniert.

    Jetzt liegen da nen haufen Dateien in dem Verzeichnis herum, daas ich als Projektverzeichnis angegeben habe.
    Zb:
    /Dist/Autotest.jar
    /bin/AutoTest.class

    /src/AutoTest.java
    /src/Auto.java
    /src/StrassenFzg.java

    So.
    Soweit ja alles klar.
    Naja, fast.
    Meine Source Dateien habe ich ja erstellt.
    Die Datei im /bin Verzeichnis enthält den Bytecode, der ausführbar ist.(oder?)

    Aber was ist das für eine Datei im /Dist Verzeichnis?
    Ist das eine Ausührbare Datei? Wenn ich die mit der rechten Maustaste anklicke und "öffnen mit" mache, dann steht der Java LAuncher zur Auswahl, nur passiert da gar nichts.

    Wenn ichins /bin Verzeichnis gehe mit dem Terminal, und java AutoTest eingeben kommen Fehlermeldungen, die in XCode nicht kommen.
    Wie gesagt innerhalb XCode läufts.

    Nun meine Fragen:

    1. Wie kann ich das außerhalb XCOde zum laufen kriegen?
    Ich meine, wenn ich ein anderes Java Programm habe, dann starte ich das auch nicht im Terminal mit zb. java TVBrowser", sonden mit einem Doppelklick.

    2. Das gleiche gilt für andere Betriebssysteme wie Windows und Linux.
    Wie kriege ich die eine *.Class Datei zum laufen?
    Ich muss ja irgendwie ne *.exe erstellen können, ebenso für Mac OS ein app.

    Ich konnte leider in der Forumssuche nichts derartiges finden können und die Tutorials die dort teilweise angeboten werden, beantworten das auch nicht.

    Wäre prima, wenn mir das jemand beantworten könnte:)
    Grüße Mondmann
     
  2. wegus

    wegus MacUser Mitglied

    Beiträge:
    15.029
    Zustimmungen:
    1.314
    Registriert seit:
    13.09.2004
    .jar Dateien sind im Grunde .zip Dateien!

    Du weißt ja, daß Du pro Klasse eine .class Datei brauchst. Eine Klasse des Projektes ist die Main-Klasse die initial gestartet wird. Alle Packages ( auch Deine) müssen relativ zum CLASSPATH liegen. Das wäre alles sehr sehr mühselig, wenn man da selbst den ganzen Dateienwald durch die Gegend schieben müßte. Bei java wird daher alles in eine Datei gezipped, die dann aber zur Erkennung .jar heißt. Sie sollte eine sog. MANIFEST Datei enthalten, die die Umgebung definiert und auch die Main-Klasse für den Start benennt!

    Mit einem einfachen

    java Autotest.jar müßte das Programm startbar sein. Mac OS erkennt .jar Dateien auch, so daß hier ein Doppelclick ebenfalls funktioneiren sollte.


    BTW: Web-Applikationen werden auch in einer speziellen Verzeichnisstruktur aufgehoben in Java ( die heißen J2EE oder JEE5). Auch diese werden schlicht nur gezipped und das Zip-File zum Application-Server übertragen. Die Zip-Files dort heißen zur Unterscheidung .war Dateien; auch hier ist nur das gute alte Zip am Werk!

    Ach und in /dist findest Du eben immer das zu distribuierende JAR-File! Offenbar auch bei XCode ( ich hab es nie für Java benutzt).
     
  3. kahler

    kahler MacUser Mitglied

    Beiträge:
    234
    Zustimmungen:
    0
    Registriert seit:
    26.09.2005
    Eventuell hilft dir ein java -jar <dein_jar> weiter.
     
  4. Mondmann

    Mondmann Thread Starter MacUser Mitglied

    Beiträge:
    2.801
    Zustimmungen:
    81
    Registriert seit:
    21.07.2004
    Ja, ich weiß, daß ich für jede Klasse eine entsprechende benantne Datei brauche. Die habe ich ja auch alle.

    Also das "java -jar AutoTest.jar" hat geholfen und ich kann es auf der Konsole ausführen.
    Es ist ja auch ein Konsolenprogramm. Kann es sein, daß es deswegen nicht mit dem Doppelklick startbar ist???
    Wie auch immer, ich kann, zumindest auf meinem System keine *.jar mit nem Doppelklick starten.
    Mit demselben Befehl läuft es nu unter Windows auch.


    Mit XCode komme ich ganz gut klar, werde aber Eclipse auf jeden Fall auch noch testen.

    Vielen Dank mal für die Antworten, Grüße Mondmann
     
  5. wegus

    wegus MacUser Mitglied

    Beiträge:
    15.029
    Zustimmungen:
    1.314
    Registriert seit:
    13.09.2004
    Nee, das startet schon, nur siehst Du davon nichts! Für Konsolenprogramme, die im Vordergrund laufen sollen, mußt Du eine Konsole vorher öffnen. Sonst läuft das Programm, analog zu einer "normalen" Applikation, einfach still vor sich hin.
     
  6. Mondmann

    Mondmann Thread Starter MacUser Mitglied

    Beiträge:
    2.801
    Zustimmungen:
    81
    Registriert seit:
    21.07.2004
    Ach so ist das.
    Ok aber wenn ich eine Konsole öffne und doppelklicke kommt nur "Fehlerhafte Eigabe", das gebe ich eben aus, wenn jemand einen Mist eingibt.Das Programm an sich startet also irgendwie nicht von Anfang an...im Gegensatz wenn ichs direkt in der Konsole starte, wie o.g.
    Aber man kann ja immer nur dazulernen, ne?
     
Die Seite wird geladen...
Ähnliche Themen - Java Programm starten Forum Datum
Mein Java Programm läuft in der IDE, hängt sich aber ohne IDE auf ? Mac OS X Entwickler, Programmierer 21.01.2014
Java basiertes Programm läuft unter bestimmtem User nicht Mac OS X Entwickler, Programmierer 27.12.2013
Wie verwendet man ein Java-Programm? Mac OS X Entwickler, Programmierer 24.04.2012
nicht lösbares Problem in einem java Programm… Mac OS X Entwickler, Programmierer 09.12.2010
Java-Programm für den Unterricht Mac OS X Entwickler, Programmierer 15.09.2009

Diese Seite empfehlen

Benutzerdefinierte Suche