Bonjour à tous,

J'ai un problème avec l'emplacement des mes fichiers properties. En fait hier en voulant créer un Jar exécutable, je me suis rendu compte que ma gestion des langues de mon application était mauvaise..
Voici mon classpath :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
	<classpathentry kind="lib" path="libs/commons-net-ftp-2.0.jar"/>
	<classpathentry kind="lib" path="libs/jdom.jar"/>
	<classpathentry kind="output" path="bin"/>
</classpath>
Donc on voit bien ici, que toutes les classes compilées donc .class seront dans les repertoires correspondant à leur package.

Voilà ma classe qui gère les langues.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package Internation;
 
import java.util.ResourceBundle;
import java.util.Locale;
 
public class Langue {
	private static final String LANGUAGE_FILE = "Language";
	private static ResourceBundle resourceBundle = ResourceBundle.getBundle(
			LANGUAGE_FILE, Locale.getDefault());
	static String currentlang = "";
 
	public void FonctionBundle(String lang) {
		currentlang = lang;
 
		if (lang.equals("en")) {
			resourceBundle = ResourceBundle.getBundle(LANGUAGE_FILE,
					Locale.ENGLISH);
		}
		if (lang.equals("fr")) {
			resourceBundle = ResourceBundle.getBundle(LANGUAGE_FILE,
					Locale.FRENCH);
		}
 
	}
 
	public static String getAnInternationalizeString(String val) {
		return resourceBundle.getString(val);
	}
 
	public static String getLangue() {
		return currentlang;
	}
}

Mon programme se lance bien si je met mes Language_fr.properties et Language_en.properties dans le repertoire bin (à la racine de bin).

Vu que j'ai retourné le net pour chercher ce que je voulais, j'ai vu sur
ce topic : http://www.developpez.net/forums/d88...dle-getbundle/

professeur shadoko
Membre éclairé

professeur shadoko : "Par défaut
pourquoi ne pas avoir plusieurs jars?
jars applicatifs
jars de librairies
et jars de déploiment contenant les ressources d'internationalisation
dans ce cas le RessourceBundle trouvera ce qu'il faut.
(à condition que tous ces jars soient dans le classPath) "

Je n'ai pas trop compris ce qu'il souhaitait dire, mais il parait comme expérimenté et cette méthode doit être valable.

Bref je ne peux pas laisser mon programme comme ça, car mon but est de faire un JAR exécutable à la fin, ( et là c'est moi qui place manuellement les properties dans le repertoire bin. ) Je manque de méthode et j'aimerai bien comprendre réellement les resourcesbundles.