Standard Directory bei jar Dateien

NetzUnity und Informatik-forum wurden zusammengelegt. Eine entsprechende Ankündigung wird demnächst noch folgen. Für 2025 ist hier einiges geplant! Bei Fragen bitte per DM an Maximilian Rupp wenden.
  • Ich hab mir ein kleines Programm zur Archivierung meiner DVD Daten geschrieben und führ es halt normal mit Doppelklick aufs jar File aus, nur das Problem ist, dass dabei das Standard Directory nicht das ist in dem das jar File liegt, sonder /home/florian (unter Linux). Das Problem ist jetzt nur, dass ich config Files im Directory hab und das XML File mit den Filmen auch im selben directory wie das jar File liegt. Nur nimmt jetzt die JVM einfach mein Home Directory als das Verzeichnis, dass ich mit "./Filme.xml" ansprech.

    Also lange rede kurzer sinn: weiss jemand wie ich das Verzeichnis umstellen kann in dem die JVM arbeitet wenn ich ein jar Programm mit Doppelklick ausführe? Also das entsprechende Standard Verzeichnis?

    thx schon mal.

  • thx für die schnelle Hilfe, aber ich lös das ganze jetzt einfach über eine .sh und eine .bat Datei für Linux bzw. Windows. die leg ich einfach ins Verzeichnis von dem Programm und es rennt damit im selben Verzeichnis. Jetzt hab ich nur noch ein Problem: Ich hab eine Funktion:

    Code
    public void openWindow(){
            disableForm();
            AddElemFrame.setVisible(true);
            AddElemFrame.setBounds(0, 0, 420, 300);
        }

    Die mir ein Fenster anzeigt in dem ich einen neuen Film anzeigen kann. Das Problem ist nur, dass mir damit der Inhalt unter einem Windows System nicht angezeigt wird, also die Textfelder, Labels, ... nicht da sind:


    wenn ich den Code jetzt aber ändere auf:

    Code
    public void openWindow(){
            disableForm();
            AddElemFrame.setVisible(true);
            AddElemFrame.setBounds(0, 0, 420, 300);
            AddElemFrame.setVisible(false);
            AddElemFrame.setVisible(true);
        }


    funktioniert es:

    um es nochmal zu sagen: Dieses Problem tritt nur unter Windows auf. Gui hab ich mit Matisse Gui Builder von Netbeans gemacht, also kein eigener zusammen geschusterter Code. Java Version ist auf beiden 1.5 Update 6 oder 7 drauf, aba das wird den Unterschied ja nicht ausmachen. also das Problem konnte ich halt einkreisen auf die setBounds bzw setSize Methode(idente Methoden, bis auf dass man mit setBounds auch noch die x und y koordinate angeben kann wo das fenster aufgebaut werden soll), nur wenn ich die nicht benutz wird das fenster mit breite und höhe gleich 0 angezeigt, also auch keine Möglichkeit.


    Hat vielleicht einer eine Ahnung wie ich das weg bekommen könnt? ich mein es funktioniert jetzt so eh, aba das is halt nicht wirklich toll und eigentlich will ich da nicht unbedingt eine Workaround einsetzen.

    mfg Flo

  • Du kannst von Java aus das Home-Directory abfragen und dort deine config-files ablegen.
    Konkret geht das mit java.lang.System.getProperty("user.home");

    Ins Programmverzeichnis sollte nie etwas abgespeichert werden, da dieser Ort in allen halbwegs sicheren Installationen nicht schreibbar ist.

    [font=verdana,sans-serif]"An über-programmer is likely to be someone who stares quietly into space and then says 'Hmm. I think I've seen something like this before.'" -- John D. Cock[/font]

    opentu.net - freier, unzensierter Informationsaustausch via IRC-Channel!
    Hilfe und Support in Studienangelegenheiten, gemütliches Beisammensein, von und mit Leuten aus dem Informatik-Forum!

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!