J'ai un problème lors du chargement de mon fichier jar lors de l'exécution. Mon hotel.jar est chargé et une méthode de celui-ci (makeReservation) est invoqué en utilisant le code suivant:Problème lors du chargement d'un fichier jar qui dépend d'un autre fichier jar
File file = new File("c:/ComponentFiles/hotel.jar");
URL jarfile = new URL("jar", "", "file:" + file.getAbsolutePath() + "!/");
URLClassLoader cl = URLClassLoader.newInstance(new URL[]{jarfile});
Class componentClass = cl.loadClass("HotelPackage.HotelMgt");
Object componentObject = componentClass.newInstance();
Method setMethod = componentClass.getDeclaredMethod("makeReservation", null);
setMethod.invoke(componentObject, null);
Le problème est dans la HotelPackage.HotelMgt de classe de mon fichier jar, j'ai une variable de classe d'un autre class (HotelPackage.Hotel) qui se trouve dans un autre fichier jar. J'ai essayé d'ouvrir et de charger l'autre fichier jar avec le même code que ci-dessus mais je reçois l'exception qui ne peut pas trouver la définition de la classe .: Exception dans le thread « principal » java.lang.NoClassDefFoundError: BeanPackage/Hôtel
quelle est la solution?
Dans ce cas peut-être que vous souhaitez mettre tous les pots dans un pot de maître - alors peut-être que ce projet est intéressant pour vous: http://one-jar.sourceforge.net/ – FunThomas424242