【问题标题】:Upgrade Jackrabbit 1.3 to Jackrabbit 2.1.1将 Jackrabbit 1.3 升级到 Jackrabbit 2.1.1
【发布时间】:2010-12-07 13:36:47
【问题描述】:

在我的项目中,我需要将 Jackrabbit 1.3 更改为 Jackrabbit 2.1.1。我的工作是为查询工作。如果索引格式和查询格式有变化,请建议我。 Jackrabbit 2.1.1 使用 Lucene 2.4,而 Jackrabbit 1.3 使用 Lucene 2.2。

【问题讨论】:

    标签: java upgrade backwards-compatibility lucene jackrabbit


    【解决方案1】:

    让我们将您的升级分为以下几个部分:

    • 将 1.3 升级到 1.5(请参阅 Class IndexMigration):

      IndexMigration 实现了一个实用程序,可将 Jackrabbit 1.4.x 索引迁移到 1.5 版。在 1.4.x 版本之前,indexes 使用字符 '' 将属性的名称与值分开。从 Lucene 2.3 开始,这不再起作用。请参阅 LUCENE-1221。 Jackrabbit >= 1.5 使用字符 '[' 作为分隔符。每当从磁盘打开索引时,都会运行快速检查以确定是否需要迁移。有关详细信息,另请参阅 JCR-1363。

    • 将 1.5 升级到 2.0.0(参见 RELEASE-NOTES.txt):

      向后兼容性

      Jackrabbit 2.0 旨在与现有 Jackrabbit 兼容 1.x 客户端和存储库。此目标的主要例外是:

      • 删除了已弃用的类和功能。 Jackrabbit 2.0 不是 向后兼容使用类或特性的客户端代码 在 1.x 发布周期中已被弃用。最为显着地 临时 org.apache.jackrabbit.api.jsr283 接口已 删除以支持 javax.jcr 中的官方 JCR 2.0 API。
      • 包含使用新 JSR 283 安全功能的存储库 作为 Jackrabbit 1.5 和 1.6 中的开发预览版可能会遇到问题 升级到 Jackrabbit 2.0 时。尤其见JCR-1944JCR-2313 了解更多详情。
      • JCR-RMI 层不再实现 Jackrabbit API 扩展。 将 JCR-RMI 用于分布式事务或用于管理的代码 创建工作空间或注册节点类型等操作需要 相应更新。
      • Jackrabbit 2.0 中的 JCR-RMI 层仅支持 JCR 2.0 存储库。 要访问 JCR 1.0 存储库实现,例如 Jackrabbit 1.x RMI,您需要使用 JCR-RMI 的 1.x 版本。
    • 将 2.0.0 升级到 2.1.1(2.x 分支定位为拥有稳定的 API):

      这是 Apache Jackrabbit 2.0.0,完全兼容且可用于生产 实现 Java 技术 API 的内容存储库,版本 2.0

    另请参阅 JackrabbitLucene API 的兼容性表。

    【讨论】:

      【解决方案2】:

      有多种方法可以从 Jackrabbit 1.x 迁移到 2.x。可能最好的文档可以在Jackrabbit Wiki 中找到,Backup and Migration 页面之一。

      【讨论】:

        猜你喜欢
        • 2022-11-10
        • 1970-01-01
        • 2018-09-08
        • 1970-01-01
        • 2016-01-10
        • 2014-04-06
        • 2011-09-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多