У меня есть одно сомнение в понимании термина компонент и служба в OSGI. Я использую фреймворк apache felix. Я прочитал по этой ссылке http://wiki.osgi.org/wiki/Declarative_Services#Providing_Services, что компоненты предоставляют услугу. Но я не понял, что когда компонент предоставляет услугу, чем интерфейс? На мой взгляд, интерфейс — это сервис, который реализуется компонентом.
Еще одно сомнение заключается в том, что если другой пакет хочет использовать услуги другого пакета, чем это делается? Он использует интерфейс (сервис) или компонент (класс реализации).
Пожалуйста, развейте мои сомнения, чтобы я мог лучше понять два термина службы и компонента и их связь с нотацией scr.