Я изучаю osgi-in-action, чтобы понять экзамен pax
к сожалению, приведенные примеры не работают.
- Я скачал исходный код с osgi-in код действия на github
- изменен в каталог [osgi-in-action] / chapter07 / testing-example
- выполнено: ant test.container
в лог-файле я вижу
...
Caused by: org.ops4j.pax.runner.platform.PlatformException: [mvn:org.ops4j.pax.exam/pax-exam/1.1.0] is not a valid bundle
...
Caused by: java.util.zip.ZipException: error in opening zip file
...
Я смущен этой ошибкой и не знаю, где расследовать.
Я понимаю:
- пакет pax-exam-1.1.0.jar находится в [osgi-in-action] / lib / pax
до появления ошибки в журнале
Provision bundle [mvn:org.ops4j.pax.exam/pax-exam/1.1.0, at start level 1, bundle will be started, bundle will be loaded from the cache]
сборка муравья. xml обеспечивает
<property name="build.cp"
value="${junit.jar}:
...
${lib}/pax/pax-exam-1.1.0.jar"/>
Главный вопрос :
- Как я могу заставить pax runner использовать предоставленный файл jar?
Дополнительные вопросы :
- Почему pax runner пытается загрузить даже хотя он сказал, что пакет будет загружен из кэша? * 10 51 *
- Почему бегун pax не может загрузить артефакт, даже если он доступен в maven central?
[EDIT] Я также открыл проблему в соответствующем репозитории github ссылка на выпуск
[2-е РЕДАКТИРОВАНИЕ], когда я удостоверяюсь, что соответствующий jar / bundle доступен в моем локальном репозитории maven, проблема не поднимается. Но поскольку я считаю это обходным путем, а не правильным ответом на поставленный вопрос, я оставляю вопрос открытым