Мы используем karaf-maven-plugin
для проверки features.xml
в проекте с несколькими модулями. Типичное определение функции выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<features name"commons-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.4.0">
<feature name="commons" version="${project.version}">
<feature prerequisite="true">wrap</feature>
<bundle>mvn:org.example/commons/${project.version}</bundle>
</feature>
</features>
Проблема в том, что проверка происходит с бандлом в локальном репозитории, а не с собираемым бандлом. Оглядываясь назад, мы не могли использовать новый пакет, потому что мы следовали этот пример, и мы привязали цель karaf:verify
к фазе process-resources
жизненного цикла.
Присоединение цели karaf:verify
к фазе жизненного цикла install
работает, но есть ли способ заставить karaf-maven-plugin
искать ссылки mvn:
в реакторе, чтобы он мог работать с mvn verify
вместо mvn install
?
Также было бы полезно ограничить его локальным репозиторием, потому что он может загружать зависимости из удаленных репозиториев (игнорируя параметр --offline
Maven) и «работать» до тех пор, пока не изменится версия.