Salut,
Envoyé par
gifffftane
Alors comment obtenir le chemin où est placé le JAR lorsqu'il est exécuté ??
Il me semble que tous les programmes ont un paramètre d'environnement à l'exécution qui est le chemin "par défaut" lorsqu'on fait référence à un chemin relatif dans le code.
Ceci n'est pas le chemin de l'application mais le répertoire de travail. Ce répertoire correspond généralement au répertoire depuis lequel tu lances le programme. Tu aurais le même comportement sous Windows si tu lancais le jar en ligne de commande depuis un autre répertoire...
Envoyé par
gifffftane
Si tu trouves, merci de me le dire. Pour moi cela n'existe pas, parce que la notion de répertoire de jar est une notion qui n'est pas fiable : ton jar peut très bien être sur un réseau, dans un cache, ou pire changer de nom, etc.
+1
Mais c'est quand même possible de récupérer le répertoire... par exemple en utilisant le ClassLoader pour récupérer le chemin d'une classe du jar, et de découper l'URL ainsi obtenu (il doit y avoir un exemple de code qui traine quelque part sur le forum).
Mais sinon tu peux également utiliser le profil de l'utilisateur pour y stocker ses données, en créant un fichier/répertoire dans le user.home :
File workingDir = new File( System.getProperty("user.home"), ".MonApplication");
Quand aux XML à lire, le mieux serait de le mettre dans le jar et de le lire avec un getResource(). Et si jamais il doit être modifié, tu le copies dans le répertoire user.home
a++
Partager