j'aimerais vos conseils pour faire fonctionner mon projet fait sous intellj en dehors de celui-ci. Dans mon programme, j'ai des ressources qui se trouvent dans des dossiers. J'ai besoin soi d'un fichier dans un dossier en particulier, par exemple un image qui me permet d'illustrer un simple bouton. Où encore, plus important, le chemin vers un dossier. Ce dossier en question se nomme "import" et me permet d'importer à l'intérieur des fichiers sur lesquels je pourrais travailler dans l'application. Normalement, il est possible d'importer uniquement des fichiers avec un format valide. A partir de là, je peux récupérer la liste des fichiers présent dans le dossier import pour effectuer diverses tâches.
Un exemple de fonctionnement:
Je veux créer un objet "DefaultListModel" afin de me permettre de remplir une JList. J'écris donc cette ligne:
a fonction "setModelFromFilePathFormats" comprend 2 paramètres:
-le path du dossier qui contient une éventuelle liste de fichiers -les formats autorisés
La fonction se découpe en 2 :
-elle comprend une autre fonction "getListOfFiles" qui récupère la liste des fichiers suivant un format
-puis elle construit elle même l'objet "DefaultListModel" avec le résultat précédent.
protected DefaultListModel setModelFromFilePathFormats(String path, String... formats) {
File[] f = this.getListOfFiles(path, formats);
DefaultListModel model = new DefaultListModel();
model.ensureCapacity(200);
for (File file : f) {
model.addElement(file.getName());
}
return model;
}
La fonction "getListOfFiles":
protected File[] getListOfFiles(String path, String... formats) {
int nbOfFormat = formats.length;
String[] typeFile = new String[nbOfFormat];
int incr = 0;
for (String format : formats) {
typeFile[incr] = format;
incr++;
}
File dir = new File(path);
return dir.listFiles((FileFilter) new WildcardFileFilter(typeFile));
}
Dans mon IDE, tout cela marchait bien mais maintenant, quand je veux faire fonctionner mon programme à partir d'un fichier '.jar', c'est la catastrophe et je me retrouve avec des erreurs comme celle-ci: "AWT-EventQueue-0" java.lang.NullPointerException:
De plus, j'ai cru comprendre que même si j'arrivais à fournir le bon path, la suite ne fonctionnerait pas car le fonctionnement dans un .jar n'est pas aussi simple.
Mais bon, c'est pas un vrai problème. Dans un jar, les ressources ne bougent pas, il suffit d'y mettre une ressource qui donne la liste des ressources concernées.
- Edité par michelbillaud 23 juillet 2021 à 17:24:51
java compilation jar et problème de path
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.