hibernate - Apache Karaf 休眠核心功能找不到 javax.persistence
问题描述
我遇到了 hibernate-envers (5.4.17.Final) 和 karaf 4.2.9 的问题,尝试安装相应的功能会导致异常:
138 │ Active │ 80 │ 2.2 │ Java(TM) Persistence API jar
139 │ Active │ 80 │ 1.10.10 │ Byte Buddy (without dependencies)
147 │ Active │ 80 │ 1.1.1 │ Apache Aries Transaction Blueprint
148 │ Active │ 80 │ 2.2.0 │ Apache Aries Transaction Blueprint
153 │ Active │ 80 │ 5.1.0.Final │ hibernate-commons-annotations
154 │ Active │ 80 │ 5.4.17.Final │ hibernate-core
155 │ Active │ 80 │ 5.4.17.Final │ hibernate-osgi
156 │ Active │ 80 │ 2.1.3.Final │ Java Annotation Indexer
157 │ Active │ 80 │ 3.3.2.Final │ JBoss Logging 3
158 │ Active │ 80 │ 1.1.1.Final │ Java Transaction API
karaf@root()> feature:install hibernate-envers
org.apache.felix.resolver.reason.ReasonException: Unable to resolve org.hibernate.orm.core/5.4.17.Final: missing requirement [org.hibernate.orm.core/5.4.17.Final] osgi.wiring.package; filter:="(&(osgi.wiring.package=javax.persistence)(version>=2.2.0))"
at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343)
at org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:420)
at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:378)
at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:332)
at org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:257)
at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:393)
at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1062)
at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:998)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Error executing command: Unable to resolve org.hibernate.orm.core/5.4.17.Final: missing requirement [org.hibernate.orm.core/5.4.17.Final] osgi.wiring.package; filter:="(&(osgi.wiring.package=javax.persistence)(version>=2.2.0))"
karaf@root()>
根据异常,缺少 javax.persistence 2.2.0 包,但是列出所有包显示 javax.persistence 和 2.2。我将如何以及在哪里解决这个问题?是休眠的问题吗?
干杯托马斯
解决方案
再次从头开始似乎解决了这个问题,我也没有再次添加休眠回购(我第一次尝试功能:repo-add hibernate 5.4.17.Final),因为它已经在那里,可能这似乎是错误,虽然相当奇怪。
推荐阅读
- ruby-on-rails - 否定包含期望的自定义 RSpec 匹配器
- oracle - 在 Oracle 中一次更新 2 个表
- python - 将枕头 Image 对象转换为 JpegImageFile 对象
- java - 如何使用 angular.js 和 java 使用大文件逐块下载大文件
- reactjs - 我的组件没有渲染,为什么?
- jenkins - Jenkins 构建失败,因为它在执行 junit 测试时正在寻找 logback.xml 中定义的日志路径
- c - 如何编写测试用例来验证 linux 中 sem_wait 函数返回的 EINTR
- angular - Angular 5和动画向右滑动
- javascript - Safari 没有停止 CSS3 动画
- python - 使用两个不同的python版本(Django App)的apache2中的WSGI错误