Je sais que cela peut être une question stupide pour codeurs expérimentés. Mais j'ai une bibliothèque (client http) que certains des autres frameworks/pots utilisé dans mon projet l'exigent. Mais toutes nécessitent des versions majeures comme:
httpclient-v1.jar => Required by cralwer.jar
httpclient-v2.jar => Required by restapi.jar
httpclient-v3.jar => required by foobar.jar
Est le chargeur de classe assez intelligent pour les séparer en quelque sorte? Probablement pas? Comment fonctionne le chargeur de classe gérer cela, dans le cas où une Classe est la même dans les trois pots. Qui est chargé et pourquoi?
Le chargeur de classe seulement ramassage exactement un bocal ou faut-il mélanger les classes de manière arbitraire? Ainsi par exemple, si une classe est chargée de Version-1.jar toutes les autres classes chargées à partir de la même chargeur de classe tous aller dans le même pot?
Comment gérez-vous ce problème?
Est-il une astuce pour en quelque sorte "intégrer" les bocaux dans l' "required.jar" de sorte que sont considérés comme "une unité/paquet" par l' Classloader
, ou en quelque sorte liés?