Obecnie badamy wykorzystanie OneJar w naszej aplikacji (z wielu powodów), ale nasza aplikacja korzysta z wielu niestandardowych URLClassloader
s, aby załadować rozszerzenia aplikacji.OneJar i dynamiczne ładowanie klasy
Po dołączeniu do słoika "OneJar" otrzymujemy wyjątki od ClassNotFound
. Klasy te znajdują się w pakiecie Jar, a my po prostu polegamy na mechanizmie klasowym, aby rozwiązać relację rodzic/dziecko.
To znaczy. Mamy wspólny interface
, który jest przechowywany w pakiecie Jar (który powinien należeć do kontekstu nadrzędnego modułu ładującego klasy). Rozszerzenie implementuje tę interface
(pozwalającą nam wywoływać rozszerzenie) i polega na możliwościach programu ładującego klasy dla podrzędnych, aby używał funkcji odnajdywania zasobów nadrzędnego modułu ładującego klasy.
Czy ktoś miał jakiekolwiek doświadczenie z tym lub rzucić jakiekolwiek światło na temat, w jaki sposób możemy go rozwiązać.
byłbym zainteresowany w innych podobnych mechanizmów (do wiązania nasza biblioteka Jar użytkownika do jednego zasobu słoik, który nie wymaga użycia do unjar wszystko i Jar w jednym pliku)
Wiesz, jeśli masz kochać odwagę ludzie głosują, kto w dół bez co najmniej o przyzwoitość komentarz co do zostawić dlaczego czułem, że jest to konieczne. To nie pomaga nikomu. Bez pewnego wyjaśnienia trudno jest dowiedzieć się, jak poprawić pytanie/odpowiedź w przyszłości. – MadProgrammer