Рубрика «java-modules»

В этой статье я хотел бы рассказать, как быстро и просто сделать каркас приложения на Java с поддержкой динамической загрузки плагинов. Читателю наверняка сразу в голову придёт, что такая задача уже давно решена, и можно просто использовать готовые фреймворки или написать свой загрузчик классов, но в предлагаемом мною решении ничего этого не потребуется:

  • Нам не понадобятся специальные библиотеки или фреймворки (OSGi, Guice и т.п.)
  • Мы не будем использовать парсинг байткода с помощью ASM и подобных библиотек.
  • Не будем писать свой загрузчик классов.
  • Не будем использовать рефлексию и аннотации.
  • Не понадобится возня с classpath для поиска плагинов. Мы вообще не будем трогать classpath.
  • Также мы не будем использовать XML, YAML или какие-либо другие декларативные языки для описания точек расширений (extension point’ов в плагинах).

Однако всё же есть одно требование — такое решение будет работать только на Java 9 или выше. Потому что оно будет основано на модулях и сервисах.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js