【问题标题】:Lucene using FSDirectoryLucene 使用 FSDirectory
【发布时间】:2016-06-25 19:52:46
【问题描述】:

我写了一个简单的 java 程序来创建一个 lucene 索引,但是我得到了一个语法错误。

我的代码:

static final String INDEX_DIRECTORY = "/home/yuqing/Desktop/index";
Directory index = FSDirectory.open(new File(INDEX_DIRECTORY));

我收到以下错误,

open (java.nio.file.path) in FSDirectory cannot be applied to java.io.file

【问题讨论】:

    标签: java lucene


    【解决方案1】:

    FSDirectory.open 调用采用 Path 参数,而不是 File(从 Lucene 版本 5.0 开始)。您可以查看Java tutorial on the Path Class 了解其工作原理。

    因此,您的代码应如下所示:

    static final String INDEX_DIRECTORY = "/home/yuqing/Desktop/index";
    Directory index = FSDirectory.open(Paths.get(INDEX_DIRECTORY));
    

    【讨论】:

      【解决方案2】:

      您应该使用 .toPath() 作为文件的路径。

      File f=new File(INDEX_DIRECTORY);
      Directory index = FSDirectory.open(f.toPath());
      

      【讨论】:

        猜你喜欢
        • 2014-10-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-22
        • 1970-01-01
        • 2013-07-31
        • 1970-01-01
        • 2015-06-15
        相关资源
        最近更新 更多