Plug-iny w Javie


(wojtek20124) #1

Jak stworzyć mechanizm zgodny z poniższym?

Odczytuję lokalizację plug-inu z bazy danych, otwieram z niego odpowiednią klasę wewnątrz silnika mojego programu.


(Frankfurterium) #2

Podałeś zbyt mało szczegółów. Jakiego plug-ina? Co to znaczy, że otwierasz z niego klasę? Bez tych informacji pomóc może jedynie szklana kula.


(Fizyda) #3

Nie mam pod ręką akurat szklanej kuli, ale zgaduję że chodzi o system pluginów ;).


(slepcu) #4

http://stackoverflow.com/questions/8546467/jar-plugins-implementation


(wojtek20124) #5

slepcu , pomogłeś mi po raz kolejny!

Tylko zastanawiam się, czy ta metoda zadziała na spakowanych klasach w plikach JAR?


(kostek135) #6

Zadziała, ale olej zaakceptowaną odpowiedź w tym linku i przejdź od razu do tej drugiej. Szybko napotkasz przy pierwszym podejściu ścianę przy usuwaniu czy przeładowywaniu “pluginów”. Nie tak łatwo jest usunąć klasę z classloadera. OSGi to w sumie najlepsze co może być w tej kwestii, sprawdzone, stabilne, działające, przetestowane, działają w oparciu o to naprawdę duże projekty - można spokojnie nazwać to standardem mimo, że nie jest częścią specyfikacji Java.


(wojtek20124) #7

Czy to oznacza zmianę języka programowania, czy dodanie dodatkowej biblioteki? Może źle czytam albo mój mózg poszedł spać.

 

U mnie, jak użytkownik będzie chciał usunąć plugin, usunie wpis z bazy danych i zresetuje automatycznie aplikację.

Jeśli będzie chciał przeładować pluginy, zresetować będzie musiał aplikację.

Czy to co napisałem wyżej ma sens?