有人设法得到一个包含这两个框架的工作应用程序吗?
我面临的问题是依赖关系是这样的:
magnolia 4.4.5 -> apache jackrabbit 1.6.4 -> apache lucene 2.4.1 hibernate search 3.4.1.Final -> apache lucene 3.1.0
因此,lucene 版本存在不一致之处。我需要一个带有注释的休眠搜索版本。
我真的尝试过整合这两个,但没有运气。我希望别人能做到。
谢谢 :)
有人设法得到一个包含这两个框架的工作应用程序吗?
我面临的问题是依赖关系是这样的:
magnolia 4.4.5 -> apache jackrabbit 1.6.4 -> apache lucene 2.4.1 hibernate search 3.4.1.Final -> apache lucene 3.1.0
因此,lucene 版本存在不一致之处。我需要一个带有注释的休眠搜索版本。
我真的尝试过整合这两个,但没有运气。我希望别人能做到。
谢谢 :)
我们已经成功使用了很长时间。Jackrabbit 更新 Lucene 的速度如此之慢,这真的很糟糕。这很难。我认为您应该考虑在单独的 JVM 中使用 Solr 来摆脱这种依赖关系。
话虽如此,这就是您可以解决的方法。定义什么是可能的是 Jackrabbit。
Jackrabbit 1.6.x 并且您必须使用 Lucene 2.4.x。我们成功地做了很长时间,但后来被迫使用旧的休眠搜索。如果你愿意,我也可以给你那个配置。
但最近jackrabbit 发布2.3.0 时,它依赖于Lucene 3.0.3。它在 3.1.0 上中断,因此您必须使用 Lucene 3.0.3。
这是我们的配置简化:
org.apache.jackrabbit:jackrabbit-core 2.3.0
- 排除 org.apache.lucene:lucene-core
org.hibernate:hibernate-core:3.6.7.Final
org.hibernate:hibernate-commons-annotations:3.2.0.Final
- 排除 org.hibernate:hibernate
org.hibernate:hibernate-search:3.3.0.Final 或 3.4.0.CR1
- 排除 org.hibernate:ejb3-persistence
- 排除 org.apache.lucene:lucene-core
(3.4.0.CR1 是依赖于 Lucene 3.0.3 的最后一个休眠搜索,但如果您不想要 beta 版本,请使用 3.3.0 或 3.3.1)
org.apache.lucene:lucene-core:3.0.3
玉兰 4.4.5
正常的 Hibernate Annotations 项目现在包含在 org.hibernate:hibernate-core:3.6.7.Final 中,因此无需依赖它。