Java - jak załadować różne wersje tej samej klasy?

Czytałem dużo o programach ładujących klasy Java, ale jak dotąd nie udało mi się znaleźć odpowiedzi na to proste pytanie:

Mam dwie wersjecom.abc.Hello.class w słoikachv1.jar iv2.jar. Chcę użyć obu w mojej aplikacji. Jak najprościej to zrobić?

Nie spodziewam się być tak prosty, ale coś w tym stylu byłoby niesamowite:

Classloader myClassLoader = [magic that includes v1.jar and ignores v2.jar]
Hello hello = myclassLoader.load[com.abc.Hello]

A w innej klasie:

Classloader myClassLoader = [magic that includes v2.jar and ignores v1.jar]
Hello hello = myclassLoader.load[com.abc.Hello]

Chciałbym uniknąć korzystania z OSGi.

questionAnswers(4)

yourAnswerToTheQuestion