Y a-t'il moyen de faire cela ? Si oui comment ?
Merci beaucoup
Version imprimable
Y a-t'il moyen de faire cela ? Si oui comment ?
Merci beaucoup
Salut,
Voila voilaaa ;)Code:
1
2 String path=new File(".").getAbsolutePath();
Fred
Oui merci, mais cela me donne uniquement le répertoire de travaille de mon projet, j'aimerai savoir si par exemple ma classe se trouve dans un jar de mon classpath ou dans un autre répertoire de mon classpath... Tu vois le genre ?
Je connais deja la méthode avec le ClassLoader.getSystemRessources() mais elle ne convient pas vraiment, mais dans le principe c'est pareil...
Salut,
Déjà il faut que les sources soient disponibles dans le jar, ensuite il faudrait connaitre leurs emplacements dans ce dernier...
Ensuite tu peux t'en sortir avec ClassLoader.getRessources() justement...
a++
Ok j'avais cette solution mais j'espérais qu'un outil existait pour le faire plus dynamiquement... Tant pis...
Encore une question avec le ClassLoader.getSystemRessources() tu ne peux que préciser le répertoire et pas le nom de la classe, n'est ce pas ? ce qui est très embetement non ? ou je me trompe ?
Merci
Tu dois préciser le chemin complet vers la resource.Citation:
Envoyé par Shiftane
Mais si tu connais le répertoire de base de tes sources et le type de ta classe je ne vois pas où est le problème puisque tu peux facilement reconstruire le tout, par exemple :
Code:
1
2
3
4 public static URL getSource(String sourceDir, Class type) { return type.getClassLoader().getResource( sourceDir + type.getName().replace(".","/") + ".java"); }
a++Code:
1
2
3
4 getSource( "src/", // Répertoire dans le jar MaClasse.class // Source à rechercher );
C sur j'ai fais comme ca pour finir, il n'y a pas d'autre moyen... mais si j'ai plusieurs répertoire de sources je dois controler dans chacun d'eux si le fichier existe...
Merci beaucoup en tout cas...
Bonjour,
La méthode marche bien sous Windows mais pas sous Ubuntu 14.10.
Sous WIndows ça donne le répertoire dans lequel le jar est copié mais sous Linux ça donne :
- À travers l'IDE NetBeans le chemin du fichier "." dans Netbeans (correct donc).
- Si on place le jar dans un répertoire quelconque ça renvoie le chemin dans mon dossier personnel.
J'essaye avec les autres méthodes.
A+
Bonjour,
Je suis désolé mais je ne comprends pas. Si je veux tester cette méthode j'écris quoi dans ma Main? getSource est une méthode de quelle classe?
Si vous avez le temps de m'expliquer je vous en serais reconnaissant.
A+
Voici une solution simple qui permet au programme en cours de trouver sa localisation :
racine3 est le dossier qui contient le programme. C'est valable dans TOUS les cas.
A+Code:
1
2
3
4
5
6
7 URL location = Main.class.getProtectionDomain().getCodeSource().getLocation(); String racine3 = location.getFile(); File initialisation = new File(racine3); initialisation = initialisation.getParentFile(); racine3 = initialisation.getAbsolutePath();
John