java.util.MissingResourceException: Can't find bundle for base name
org.jfree.chart.LocalizationBundle, locale en_US
Au point, le message d'exception indique en détail que vous devez avoir soit des fichiers suivants dans le classpath:
/org/jfree/chart/LocalizationBundle.properties
ou
/org/jfree/chart/LocalizationBundle_en.properties
ou
/org/jfree/chart/LocalizationBundle_en_US.properties
Voir également Sun's own tutorial about resourcebundles pour plus d'informations. Mais comme il s'agit en fait d'un fichier de propriétés géré par un tiers, vous ne devriez pas en créer un vous-même. Il devrait déjà être disponible dans le fichier JAR JFreeChart. Assurez-vous donc de l'avoir dans le classpath lors de l'exécution. Assurez-vous également que vous utilisez la bonne version, l'emplacement du fichier de propriétés dans l'arborescence du package peut avoir changé par version de JFreeChart. Lors de l'exécution d'un fichier JAR, vous pouvez utiliser l'argument -cp
pour spécifier le chemin de classe. .: par exemple
java -jar -cp c:/path/to/jfreechart.jar yourfile.jar
Sinon, vous pouvez spécifier l'entrée classpath class-path
dans le fichier manifeste du JAR. Vous pouvez utiliser ici des chemins relatifs qui sont relatifs au fichier JAR lui-même. Ne pas utiliser la variable d'environnement %CLASSPATH%
, il est ignoré par son JAR et tout le reste qui ne sont pas exécutées avec java.exe
sans-cp
, -classpath
et -jar
arguments.
Il est également intéressant de vérifier que vous n'avez pas de fautes de frappe dans votre nom de bundle, je passe 30 min déboguer mon application juste pour réaliser que lorsque j'ai renommé mon bundle d'IDE, j'ai ajouté accidentellement un espace sous Linux, donc OS ne se plaint pas). Facepalm ... – csharpfolk