как создать пакет osgi из jar

Я использую MultipartbodyBuilder для отправки файла и метаданных из клиента веб-службы REST. Использовать

В моем файле pom я добавил

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpmime</artifactId>
    <version>4.3.2</version>
</dependency>

а также

<Embed-Dependency>
  http-mime
</Embed-Dependency>

Я не добавил какой-либо пакет, связанный с пантомимой, для этой функции в приложениях feature.xml.

Когда я пытаюсь установить эту функцию на karaf, я получаю следующую ошибку в файлах журнала, и она переходит в режим ожидания.

->net.sf.cglib.core.CodeGenerationException: java.lang.StackOverflowError-->null
2016-08-03 20:10:22,456[SpringOsgiExtenderThread-58]|ERROR|org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean|175-org.apache.cxf.cxf-rt-frontend-jaxrs-2.7.3|net.sf.cglib.core.CodeGenerationException : java.lang.RuntimeException-->net.sf.cglib.core.CodeGenerationException: java.lang.StackOverflowError-->null

Я использую karaf osgi, поэтому я решил, что мне нужно, чтобы пакет osgi был сопоставлен с функциями. xml http mime - это jar без какого-либо пакета. Существует пакет httpclient osgi, но он имеет другие зависимости и нарушает другие мои проекты, отображаемые в функциях xml.

Я хочу знать, как создать пакет osgi, используя файл jar httpmime 4.3.2. Я новичок в этом, поэтому, если некоторые рекомендации и ссылки помогут.


person Jose    schedule 03.08.2016    source источник
comment
У вас больше шансов получить помощь, если вы сможете дать осмысленный заголовок и пояснить, что вы пытаетесь сделать. Кроме того, вы должны пометить свой вопрос на определенном языке.   -  person miken32    schedule 03.08.2016


Ответы (1)


Существует функция karaf, называемая оберткой. Это позволяет использовать также JAR-файлы, отличные от OSGI. В файле feature.xml вам просто нужно добавить следующее bundle к вашей функции.

<bundle>wrap:mvn:org.apache.httpcomponents/httpmime/4.3.2</bundle>
person Christian    schedule 05.08.2016
comment
Все еще получаю ту же ошибку org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean|175-org.apache.cxf.cxf-rt-frontend-jaxrs-2.7.3|net.sf.cglib.core.CodeGenerationException : java.lang.reflect.InvocationTargetException-->null org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean|175-org.apache.cxf.cxf-rt-frontend-jaxrs-2.7.3|net.sf.cglib.core.CodeGenerationException : java.lang.StackOverflowError-->null |org.apache.cxf.jaxrs.client.JAXRSClientFactoryBean|175-org.apache.cxf.cxf-rt-frontend-jaxrs->net.sf.cglib.core.CodeGenerationException: java.lang.StackOverflowError-->null - person Jose; 05.08.2016
comment
Извините, я только что ответил на ваш вопрос о том, как получить плагин OSGI из существующей банки. Я не смотрел на ошибку и почему это происходит. - person Christian; 05.08.2016