Я пытаюсь добавить Hibernate в качестве зависимости моего пакета OSGi, используя Maven. В моем файле POM у меня есть:Использование Hibernate с OSGi и Maven
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-osgi</artifactId>
<version>4.3.6.Final</version>
</dependency>
Однако, когда я бежал, что я получил ошибку:
org.osgi.framework.BundleException: неразрешенное ограничение в расслоении org.hibernate.core [8] : Невозможно разрешить 8.0: отсутствует требование [8.0] osgi.wiring.package; (& (osgi.wiring.package = javax.transaction.xa) (версия> = 1.1.0) (! (Версия> = 2.0.0))) [вызвано: Не удалось разрешить 15.0: отсутствует требование [15.0] osgi .wiring.package; (Osgi.wiring.package = javax.enterprise.context)]
Поэтому я добавил еще одну зависимость для javax.enterprise.context:
<dependency>
<groupId>javax.enterprise</groupId>
<artifactId>cdi-api</artifactId>
<version>1.2</version>
</dependency>
, которая решала предыдущую ошибку, но приведет к другой ошибке:
Auto-properties install: file: ///path/to/project/hibernate/target/bundles/javax.inject-1.jar (org.osgi.framework.BundleException: не удалось создать объект пакета. Java .lang.IndexOutOfBoundsException)
И теперь я не могу решить эту проблему или даже выяснить, что ее вызывает. Я использую Apache Felix.