1
Я пытаюсь запустить свой пакет, созданный Maven в контейнере FUSE ESB OSGi. Но я получил ошибку с тремя зависимостями:OSGi использует ограничение ограничений
1. libthrift-0.7.0.jar
2. httpclient-4.0.1.jar
3. httpcore-4.0.1.jar
Error executing command: Error starting bundles:
Unable to start bundle 262: Uses constraint violation. Unable to resolve bundle
revision file__opt_FuseESBEnterprise-7.1.0_deploy_libthrift-0.7.0.jar [316.0]
because it is exposed to package 'org.apache.http' from bundle revisions
org.apache.httpcomponents.httpcore [291.0] and org.apache.httpcomponents.httpclient
[290.0] via two dependency chains.
Chain 1:
file__opt_FuseESBEnterprise-7.1.0_deploy_libthrift-0.7.0.jar [316.0]
import: (osgi.wiring.package=org.apache.http)
|
export: osgi.wiring.package=org.apache.http
org.apache.httpcomponents.httpcore [291.0]
Chain 2:
file__opt_FuseESBEnterprise-7.1.0_deploy_libthrift-0.7.0.jar [316.0]
import: (osgi.wiring.package=org.apache.http.client)
|
export: osgi.wiring.package=org.apache.http.client; uses:=org.apache.http
export: osgi.wiring.package=org.apache.http
org.apache.httpcomponents.httpclient [290.0]
Может кто-нибудь объяснить мне, что это ошибка о?
Прочитать мое сообщение в блоге для объяснения «использует ограничения» в OSGi: http://njbartlett.name/2011/02/09/uses-constraints.html –
Спасибо за сообщение Neil. Теперь я выясню, что проблема заключается в 'apache.http', который, как' ulti.verify', показан в вашем примере. В своем сообщении вы даете решение, удаляя дублирование. Но мне интересно, как его удалить. Изменив экспорт в манифесте? –