2010-12-07 116 views
2

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

回答

2

让分升级为以下几个部分:

  • 升级1.3〜1.5(见Class IndexMigration):

    IndexMigration实现了一个工具,一个迁移的1.4.x兔崽子指数1.5版本。在版本1.4.x之前,索引使用字符''来分隔属性名称与值。从Lucene 2.3开始,这不再起作用。参见LUCENE-1221。 Jackrabbit> = 1.5使用字符'['作为分隔符。无论何时从磁盘打开索引,都会执行快速检查以确定是否需要进行迁移。有关更多详细信息,另请参阅JCR-1363。

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

    向后兼容性

    贾卡拉比特2.0是设计为与现有贾卡拉比特 1.x的客户端和存储库兼容。主要例外这个目标是:

    • 删除过时的类和功能。 Jackrabbit 2.0不是 向后兼容的客户端代码使用类别或功能 已被弃用在1.x发布周期。最值得注意的是 临时的org.apache.jackrabbit.api.jsr283接口已被 删除,以支持javax.jcr中的官方JCR 2.0 API。
    • 在升级到Jackrabbit 2.0时,使用新的JSR 283安全功能包括 作为开发预览的仓库在Jackrabbit 1.5和1.6中可能会遇到问题 。有关更多详细信息,请参阅JCR-1944JCR-2313
    • JCR-RMI层不再实现Jackrabbit API扩展。 使用JCR-RMI与分布式事务或用于管理的代码 像创建工作区或注册节点类型的操作需要 进行相应更新。
    • Jackrabbit 2.0中的JCR-RMI层仅支持JCR 2.0存储库。 要通过 RMI访问像Jackrabbit 1.x这样的JCR 1.0存储库实现,您需要使用1.x版本的JCR-RMI。
  • 将2.0.0升级到2.1.1(2。X分支被定位为有稳定的API):

    这就是Apache 2.0.0兔崽子,一完全符合和生产就绪 实施Java技术API的内容仓库的,2.0版

另请参阅兼容性表JackrabbitLucene API。