не работает код примера экзамена pax osgi-in-action - PullRequest
0 голосов
/ 01 мая 2020

Я изучаю osgi-in-action, чтобы понять экзамен pax

к сожалению, приведенные примеры не работают.

  1. Я скачал исходный код с osgi-in код действия на github
  2. изменен в каталог [osgi-in-action] / chapter07 / testing-example
  3. выполнено: ant test.container
  4. в лог-файле я вижу

    ...
    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
    ...
    

Я смущен этой ошибкой и не знаю, где расследовать.

Я понимаю:

  1. пакет pax-exam-1.1.0.jar находится в [osgi-in-action] / lib / pax
  2. до появления ошибки в журнале

    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]
    
  3. сборка муравья. 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, проблема не поднимается. Но поскольку я считаю это обходным путем, а не правильным ответом на поставленный вопрос, я оставляю вопрос открытым

...