1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Problem mit Ausführen von JAR Archiv

Discussion in 'Programmieren' started by Hockeyruls, May 26, 2007.

Thread Status:
Not open for further replies.
  1. Hockeyruls

    Hockeyruls Kbyte

    Hallo allerseits,

    ich habe ein Problem mit dem Ausführen einer JAR-Datei, welches ich erstellt habe.

    Zur Erstellung des Archives verwende ich folgenden Befehl auf der Kommandoebene:

    jar -cvfm uebung5.jar manifest.mf *.*

    Eigentlich müsste er jetzt alle Dateien mit einbinden, was auch der Fall ist, wenn ich mir das Archiv mit WINRAR ansehe. Es befinden sich nämlich alle Class-Dateien, die Manifestdatei und eine Textdatei für mein Programm im Archiv.

    Kopiere ich das Archiv nun in einen anderen Ordner und führe es aus, so kommt immer die Meldung FILE_NOT_FOUND_EXCEPTION (EventIndex.txt). Dies ist die Textdatei die in meinem Programm aufgerufen wird und auch in dem JAR-Archiv enthalten ist.

    Kann mir hier jemand weiterhelfen? Bin für jeden Ratschlag dankbar!!!

    Meiner Meinung nach muss in dem Ordner, in dem ich das Archiv ausführe die Textdatei ja nicht separat vorhanden sein, oder?
     
  2. L-ectron-X

    L-ectron-X Guest

    Um auf Elemente (Dateien) in einem Jar-Archiv zugreifen zu können, musst du dir den Pfad zur Datei besorgen.
    Für eine Grafikdatei, die man auf einem JButton oder JLabel positionieren kann, würde das z.B. so aussehen:
    Code:
    ImageIcon icon = new ImageIcon(getClass().getResource("/1bild.jpg"));
     
  3. Hockeyruls

    Hockeyruls Kbyte

    Hallo. Danke erst mal für deine Antwort.
    Ich habe das mal probiert, aber ich bekomme eine Fehlermeldung beim Kompilieren --> The Constructor File(URL) is undefined.

    Also mal schnell zur Funktionsweise. Ich öffne mit dem Scanner eine Datei (eventIndex.txt) und lese diese Zeilenweise ein und nehme entsprechende Formatierungen vor.

    eventScanner = new Scanner(new File(getClass().getResource("eventIndex.txt")));

    Ich gehe aus der Compilermeldung davon aus, dass ich deine Methode (getClass() ...) nicht verwenden kann.
     
  4. L-ectron-X

    L-ectron-X Guest

    Beim Einlesen mit Scanner ist es eleganter, ihm einen Stream auf die Datei zu übergeben. Ich habe das mal in einem kleinen Programm veranschaulicht. Das Programm liest seinen eigenen Quelltext aus einer Jar-Datei und zeigt ihn an.
     

    Attached Files:

  5. Hockeyruls

    Hockeyruls Kbyte

    Danke für die Hilfe und das Demo Programm.

    Jetzt funktioniert mein Programm einwandfrei.
    War schon am verzweifeln.

    Es lag tatsächlich an der Zeile mit getClass()...!

    Ohne die Zeile erkennt er nicht, dass er die Datei im Archiv suchen soll.
     
  6. wirbelsturm

    wirbelsturm Kbyte

    Das gehört ja eigentlich unter Kaufberatung hin aber weil wir gleich dabei sind: Könnt ihr mir ein Buch für Java empfehlen(möglichst umfangreich und verständlich).
    Ach ja, habe mal gehört das Java Programme langsamer sind als andere, stimmt das?
    wirbelsturm
     
Thread Status:
Not open for further replies.

Share This Page