В настоящее время я работаю со структурой OSGi, но у меня есть вопрос о некоторых концепциях, которые мне не ясны на 100%. Я сам искал его, но не смог найти достойного ответа, который бы это четко объяснял.
В связке его заголовок манифеста 2 из заголовков, которые используются, это Import-Package
и Export-Package
. Имена говорят сами за себя: спрос на определенный пакет и предложение определенного пакета. Чтобы получить этот пакет (или дать этот пакет), полный пакет должен быть установлен в инфраструктуре, где требуется импорт.
Но затем мы переходим к части модели Requirements-Capabilities
. Это может практически сделать то же самое, что и заголовки Import-Package
и Export-Package
. Для этой модели Requirements-Capability
есть также заголовки: Require-Capability
и Provide-Capability
. Опять же, это означает, что нужно что-то требовать и что-то предоставлять.
Я знаю, что модель Requirements-Capability
была введена позже при разработке спецификаций OSGi. Не могу точно найти, в каком году и версии он был представлен.
Но,
Почему это было добавлено в спецификацию? Я не вижу, что он может предложить больше, чем то, что уже предложено в
Import
/Export-package
: создание зависимостей от других пакетов/пакетов?Может ли кто-нибудь дать мне лучшее понимание разницы (за и против) между этими двумя наборами понятий?