Я пытаюсь использовать функцию в своем новом пакете, которая запускается один раз при запуске контейнера Apache Karaf.
Основной класс в Пакете выглядит следующим образом:
@Component(service = BrandNewBundle.class)
public class BrandNewBundle {
....
@Activate
protected void activate(ComponentContext myComponentContext) {
LOG.info("Brand new bundle started.");
}
}
В консоли karaf состояние пакета отображается как Active
. Но в журналах я не вижу сообщения, которое я пытался зарегистрировать.
Некоторая информация:
- Это сборка Maven
osgi.cmpn
и slf4j-api
мои зависимости в pom.xml
, и пока ничего больше. - В этом файле
нет файла bnd.bnd
Я прочитал Apache Felix Service Component Runtime (SCR)
стр. В отличие от того, что там упоминалось, мой OSGI-INF/....xml
сгенерирован автоматически. Я не знаю, как отлаживать дальше.
Подводя итог, вопрос в том, как на самом деле вызвать мою функцию activate
?