Невозможно использовать протокол сборки PAX-URL с автоматически запускаемыми пакетами в Felix config.properties - PullRequest
2 голосов
/ 24 февраля 2011

Я пытаюсь использовать PAX-URL, чтобы иметь возможность собирать неупакованные пакеты на лету.

Если я добавлю pax-url-assembly-1.2.1.jar в пакеты автозапуска,а затем введите

установить сборку: путь / к / моей / папке

все работает.Проблема в том, что я хочу дать felix эти папки в файле конфигурации, используя> felix.auto.start.1 = сборка: путь / к / моей / папке

Если я это сделаю, я получу «Неизвестнопротокол: сборка "исключение.

Я попытался загрузить PAX-URL на уровне 1 и установить начальный уровень по умолчанию для всех остальных пакетов равным 10. Не поможет.Я думаю, что это "System Bundle", который считывает конфигурацию перед загрузкой какого-либо пакета, и, следовательно, "сборка" не понимается.

Мне кажется, мне нужно сказать Felix, чтобы он загружал PAX-URL, когда сам Felixначинается.

Есть идеи?Я все понял неправильно?:)

Спасибо!

Ответы [ 2 ]

4 голосов
/ 29 июля 2011

Попробуйте поместить PAX-URL в папку bundle в Apache Felix и запустите его с параметрами -Djava.protocol.handler.pkgs=org.ops4j.pax.url.

Здесь - это пост, описывающий разработку Apache Felix в Eclipse

2 голосов
/ 04 августа 2011

Еще одна вещь!Если вы используете декларативные службы с плагином maven-SCR, pax-url не найдет файл servicecomponents.xml, поскольку плагин по умолчанию помещает его непосредственно в цель (в отличие от цели / классов).Чтобы это работало, вам нужно добавить конфигурационный раздел в ваш плагин scr, изменив каталог вывода, например:

<plugin>
    <groupId>org.apache.felix</groupId>
    <artifactId>maven-scr-plugin</artifactId>
    <version>1.7.0</version>
    <executions>
        <execution>
            <id>generate-scr-scrdescriptor</id>
            <goals>
                <goal>scr</goal>
            </goals>
            <configuration>
                <!-- Without this, PAX-URL won't work -->
                <outputDirectory>target/classes</outputDirectory>
            </configuration>
        </execution>
    </executions>
</plugin>
...