Как кешировать сервисный код из URLClassLoader - PullRequest
0 голосов
/ 14 февраля 2019

Мне нужно написать библиотеку Java, которую необходимо будет встроить в различные среды выполнения (некоторые веб-службы, настольные приложения, даже, возможно, в JVM базы данных Oracle).

Важно, чтобыбиблиотека запускается в JVM приложения, которое ее использует (например, я не могу просто заставить все приложения вызывать веб-службу, которая использует эту библиотеку).

Также важно, чтобы каждое приложение, работающее с библиотекой, выполнялосьта же версия, поскольку библиотека будет обеспечивать реализацию бизнес-логики, которую необходимо последовательно применять на предприятии.

Наконец, некоторые приложения, использующие библиотеку, ориентированы на клиентов и предъявляют повышенные требования к времени безотказной работы.

Цель: я хочу загрузить библиотеку Java из центрального расположения в сети, а также кэшировать ее локально, чтобы использовать ее в случае, если это центральное расположение недоступно

** Вопрос: могу ли я сделать это как-нибудь, написав собственный загрузчик классов, который будет искать сначала по сетевому URL и,если найден, загрузить класс и сохранить его локально и, если не найден, загрузить ранее сохраненную локально версию класса?**

Я не знаю всего о загрузчиках классов, и меня беспокоит несколько вещей.Расположение локально сохраненных (кэшированных) классов, вероятно, не будет в CLASSPATH JVM.Будет ли это проблемой?Какие другие факторы могут сделать этот подход проблематичным / неосуществимым?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...