Merci de ta réponse rapide. Mon soft malgré qu'il soit en version beta, faiblement annoncé est déjà référencé sur plusieurs sites, avec ses bugs, ça craint 



Les réponses:
Ma structure de fichier est la suivante, dans un répertoire au choix que je connais pas, car choisi par l'utilisateur à l'unzip.
.\zweeger.dll : le plug, qui est un wrapper VST(norme C de plugins audio) -> java. Ce plug crée un nouvel objet d'une classe référencée dans le fichier de config
.\zweeger.ini:le fichier de config du wrapper, où je lui indique quelle est la classe à instancier et où la trouver ainsi que les jar du wrapper
.\zweeger\zweeger.jarLe jar de mon application qui contient les classes et des ressources non modifiables (dtd + application.properties)
.\zweeger\preferences.propertiesLes préférences de l'utilisateur. Le unzip en amène une version par défaut. Modifiable par l'utilisateur
.\zweeger\default.zwgUn "fichier"/"objet"/"document" chargeable dans l'application: c'est comme le Normal.dot dans Word: ça sert à l'initialisation et c'est modifiable.
.\zweeger\Icons\lfo.pngLes icônes de l'application.
Rem: Auraient pu être dans le jar, mais comme j'avais tout écrit en parcourant tout le contenu du répertoire \Icons\ et en le chargeant, et que ceci n'est pas possible dans un jar, je les ai laissées en dehors du jar. Rem: je n'ai aucun contrôle sur zweeger.dll (c'est le wrapper) et, je ne modifie zweeger.ini que dans le sens décrit pas son auteur (classpath, classe du plugin, options du wrapper, ...)
Dans l'exemple que tu donnes, le fichier n'est pas dans ton jar mais à coté...
Je me suis mal exprimé.
En résumé, mes ressources statiques (sauf les icônes) sont dans le jar.
Les ressources dynamiques sont à côté du jar. Ce sont celles-là que j'ai du mal à atteindre de manière systématique (ex: default.zwg)
Partager