Seite 1 von 2 12 Letzte »
Ergebnis 1 bis 20 von 23

BlueJ Programme (also java codes) ohne BlueJ benutzen

  1. #1 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Hallo
    Seit einiger Zeit erstelle ich einfache Programme mit BlueJ. (BSP: Programm zum Lösen einer quadratischen Gleichung)
    Jetzt frag ich mich, wie mache ich es, das ich z.B. das Beispiel oben^ als .exe oder so erstellen kann. Man soll also das Programm benutzen können, ohne BlueJ zu besitzen.
    Dr Acula ist offline Geändert von Dr Acula (14.11.2009 um 18:49 Uhr) Grund: besser verständlich

  2. #2 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Zunächst mal, solltest du das Programm so schreiben, das es ohne Entwicklungsumgebung lauffähig ist.
    Das heißt, du brauchst eine Benutzerschnittelle, ob Grafisch, oder Textlich ist egal, aber ohne wirst du niemals etwas davon merken, dass das Programm läuft. Und du brauchst eine Startmethode, die schimpft sich public static void main(String [] args). Diese wird beim starten des Programms dann automatisch aufgerufen.
    Zum starten brauchst du dann garkeine *.exe, das ist das schöne an Java, sobald der Quelltext compiliert wurde, hast du im Prinzip alles. Du kannst das Programm dann z.B. über die Konsole aufrufen, indem du in das Programmverzeichnis wechselst, und dort dann java <Programmname> [Parameter] eingibst.
    Wenn du dem Benutzer diesen Schritt ersparen möchtest, erstellst du einfach eine Batch-Datei, die diesen Befehl ausführt.

    Hoffe konnte helfen.
    Lookbehind ist offline

  3. #3 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    public static void main(String [] args) benutz ich.
    Diese Programmzeile java <Programmname> [Parameter], was muss ich da genau eingeben?
    Dr Acula ist offline

  4. #4 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Angenommen du hast ein Telefonbuch geschrieben, das standardmäßig eine grafische Benutzeroberfläche bietet, aber mit dem Parameter -text auch als textbasierte Anwendung gestartet werden kann. Dann wäre der Standard-Aufruf:
    java Telefonbuch
    Und der textbasierte Aufruf:
    java Telefonbuch -text
    Man kann auch mehrere Parameter übergeben, man muss sie dann nur durch Leerzeichen trennen. Die Parameter tauchen anschließend im Array args wieder auf.
    Lookbehind ist offline

  5. #5 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Da kommt so ein Fehler.
    Dr Acula ist offline

  6. #6 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Die Fehlermeldung ist doch recht eindeutig: could not find the main class: test. Programm will exit.

    Zu deutsch: Er findet das Programm, welches du starten willst, nicht. Ich würde mal ganz platt behaupten, du befindest dich im falschen Verzeichnis. Oder legst du deine Programm-Dateien im BlueJ-Verzeichnis ab?
    Lookbehind ist offline

  7. #7 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Ah, jetzt läufts. Jedoch hab ich ne Frage:
    Ich bräuchte so eine portable Datei von meinen Programmen. Also ich egal wo man die hinkopiert, doppelklick drauf und das Programm startet sich. Und was muss ich in den Source schreiben, damit der das widerholt, wenns fertig ist. Also bsp: einfache Rechnung (a+b). wenn man sein ergebnis hat, soll der wieder von vorne anfangen, sodass man also mit neuen Zahlen rechnen kann.
    Dr Acula ist offline

  8. #8 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Zitat Zitat von Dr Acula Beitrag anzeigen
    Ah, jetzt läufts. Jedoch hab ich ne Frage:
    Ich bräuchte so eine portable Datei von meinen Programmen. Also ich egal wo man die hinkopiert, doppelklick drauf und das Programm startet sich.
    Damit du nicht immer die Konsole öffnen musst, bietet sich eine Batch-Datei an, die letztlich nichts anderes macht als "java <Programmname> [Parameter]" auf zu rufen. Diese Batch-Datei muss natürlich im Programm-Verzeichnis liegen.
    Wenn du etwas suchst, was du dir z.B. auf den Desktop legen kannst, dann mach doch einfach eine Verknüpfung auf die Batch-Datei, die kannst du dir hin kopieren wo du willst.
    Zitat Zitat von Dr Acula Beitrag anzeigen
    Und was muss ich in den Source schreiben, damit der das widerholt, wenns fertig ist. Also bsp: einfache Rechnung (a+b). wenn man sein ergebnis hat, soll der wieder von vorne anfangen, sodass man also mit neuen Zahlen rechnen kann.
    Das hängt von deinem Quellcode ab.
    Am einfachsten wäre es, am Ende wieder die main Methode auf zu rufen. Schleifen wären eine andere Möglichkeit.
    Denk aber daran, eine Abbruchbedingung zu definieren, die auch wirklich eintreffen kann, sonnst läuft dein Programm ewig, und zieht Rechnekraft ohne Ende, kann im schlimmsten Fall sogar das System zum Absturz bringen.

    Ich verschieb das mal ins passende Forum.
    Lookbehind ist offline

  9. #9 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Wie genau macht man das mit am Ende die main methode wieder aufzurufen?
    Dr Acula ist offline

  10. #10 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    So wie du jede andere Methode auch aufrufst.
    Code:
    main([Parameter]);
    Lookbehind ist offline

  11. #11 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Kann man das auch automatisieren?
    Dr Acula ist offline

  12. #12 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Wie meinst du das?
    Lookbehind ist offline

  13. #13 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Na, Programm durgeführt und danach soll der ohne irgendeine eingabe das programm wieder starten.
    Ach und ich hab das mit der bat datei geschafft, jedoch schließt sich die Konsole sofort wieder. Wie kann ich das verhindern?
    Dr Acula ist offline

  14. #14 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Zitat Zitat von Dr Acula Beitrag anzeigen
    Na, Programm durgeführt und danach soll der ohne irgendeine eingabe das programm wieder starten.
    Wie gesagt, die Start-Methode am Ende gleich wieder auf rufen.
    Wie das genau aussieht, das hängt von deinem Quelltext ab.
    Wichtig: Denk daran eine Abbruchbedingung ein zu fügen, die auch wirklich erreicht werden kann! Sonnst kann dir dieses eine Programm, dein ganzes System mit in den Abgrund reißen. Jeh nach dem welches System du benutzt. Unter Windows, wirst du es vielleicht noch über den Taskmanager retten können, aber Java läuft z.B. auch auf PDAs oder Handys.
    Zitat Zitat von Dr Acula Beitrag anzeigen
    Ach und ich hab das mit der bat datei geschafft, jedoch schließt sich die Konsole sofort wieder. Wie kann ich das verhindern?
    Naja, die Ausgabe in der Konsole, ist für Systeme gedacht, die nichts anderes können. Dort wird das Programm dann auch über die Konsole aufgerufen, und bleibt dann auch nach Beendigung des Programms zu sehen.
    Systeme, bei denen man auf eine ausführbare Datei klickt, erwarten für gewöhnlich ein Grafisches User Interface (GUI).
    Lookbehind ist offline

  15. #15 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Boar, so viel davon versteh ich nicht, habe gerade erst damit angefangen. Könntest du das mit der Konsole bitte noch einmal wiederholen, sodass auch ich es verstehe?
    Dr Acula ist offline

  16. #16 Zitieren
    Halbgott
    Registriert seit
    Mar 2003
    Beiträge
    9.125
    Zitat Zitat von Dr Acula Beitrag anzeigen
    Boar, so viel davon versteh ich nicht, habe gerade erst damit angefangen. Könntest du das mit der Konsole bitte noch einmal wiederholen, sodass auch ich es verstehe?
    Du startest das Programm, es gibt etwas aus und dann beendet es sich wieder. Das ist für dich ein ungewöhnliches Verhalten, aber wenn du dir mal andere Programme anschaust die nur eine Konsolenausgabe haben, dann wirst du sehen dass das sogar das gewollte Vorgehen ist.

    Wenn man ein Konsolenprogramm nutzt hat man üblicherweise bereits eine Konsole offen.
    Nun gibt man Namen des Programmes ein, es startet in der selben Konsole, macht seine Ausgabe, und beendet sich automatisch wieder so dass der Benutzer den nächsten Befehl eingeben kann.
    Startet man das Programm über einen Doppelklick oder sonstigen Weg, dann passiert genau das selbe, nur dass das Programm nicht in einer bereits geöffneten Konsole seine Ausgaben macht, sondern gezwungen ist seine eigene zu öffnen welche natürlich sich schließt wenn das Programm fertig ist.

    Nehmen wir an wir sind Fall 1 weil wir uns auskennen (), wir erwarten also dass das Programm sich beendet und wir die nächste Eingabe machen können wenn es fertig ist.
    Wenn du nun durch einen Befehl die Konsole blockierst, behinderst du den Benutzer in seiner normalen Arbeitsumgebung.

    Du hast also zwei Möglichkeiten, die Konsole blockieren, das geht üblicherweise indem man eine weitere Eingabe einlesen will.
    Oder du machst es auf den richtigen Weg und startest deine eigene Konsole wovon aus du nun dein Programm startest. So wie bärtige Männer das vor 30 Jahren schon auf ihren Unix-Workstations gemacht haben.
    Chris ist offline

  17. #17 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    So, hab jetzt all meine Probleme gelöst.
    Dr Acula ist offline

  18. #18 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Leider ist ein neues Prob aufgetreten: Das mit der Batchdatei geht auf den PC's in der Schule nicht, da die CMD Konsole gesperrt ist. Kann ich das auch noch mit einem anderen Programm öffnen?
    Dr Acula ist offline

  19. #19 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.220
    Grundsätzlich kannst du das eigentlich nur mit der JavaVM öffnen, wenn euch die natürlich versagt wird... blöd!
    Du könntest höchstens mal versuchen eine *.jar Datei draus zu machen (Projekt => Als jar-Archiev speichern), vielleicht ist da in eurer Schule eine direkte Programm-Verknüpfung angelegt.
    Wenn dein Programm natürlich immernoch eine Textausgabe in der Konsole macht, wird auch das nicht funktionieren. Und ich vermute mal, dass das das eigentliche Problem ist. Denn die Batch-Datei ruft an sich keine Konsole auf.
    Lookbehind ist offline

  20. #20 Zitieren
    Kämpfer Avatar von Dr Acula
    Registriert seit
    Feb 2008
    Ort
    Dort wo Internet ist, bin auch ich...
    Beiträge
    314
    Äh, was soll ich tun?
    Dr Acula ist offline

Seite 1 von 2 12 Letzte »

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •