Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Terrier信息检索工具在Java中的集成实验返回错误_Java_Maven_Data Mining_Information Retrieval - Fatal编程技术网

Terrier信息检索工具在Java中的集成实验返回错误

Terrier信息检索工具在Java中的集成实验返回错误,java,maven,data-mining,information-retrieval,Java,Maven,Data Mining,Information Retrieval,基本上,我正在使用一个叫做Terrier项目的信息检索工具。我参考了文档,因此我想学习Terrier搜索引擎与Java项目的集成。因此,我尝试使用NetBeans IDE创建Java和Maven项目,并根据文档使用所需的依赖项更新了POM.xml文件。但当我试着运行这段代码时,它在SearchResult上给了我一个错误。(请参见下面给出的图片链接) 我甚至无法在maven repository和maven central repository上找到该工件。灯泡图标确实出现了,但它显示了不相关的

基本上,我正在使用一个叫做Terrier项目的信息检索工具。我参考了文档,因此我想学习Terrier搜索引擎与Java项目的集成。因此,我尝试使用NetBeans IDE创建Java和Maven项目,并根据文档使用所需的依赖项更新了POM.xml文件。但当我试着运行这段代码时,它在SearchResult上给了我一个错误。(请参见下面给出的图片链接)

我甚至无法在maven repository和maven central repository上找到该工件。灯泡图标确实出现了,但它显示了不相关的建议

我正在关注的文档>>

有什么解决办法吗

public static void main(String[] args) throws Exception {

    // Directory containing files to index
    String aDirectoryToIndex = "/my/directory/containing/files/";

    // Configure Terrier
    ApplicationSetup.setProperty("indexer.meta.forward.keys", "filename");
    ApplicationSetup.setProperty("indexer.meta.forward.keylens", "200");

    Indexer indexer = new BasicIndexer("/path/to/my/index", "data");
    Collection coll = new SimpleFileCollection(Arrays.asList(aDirectoryToIndex), true);
    indexer.index(new Collection[]{coll});
    //indexer.close();

    Index index = Index.createIndex("/path/to/my/index", "data");

    // Set up the querying process
    ApplicationSetup.setProperty("querying.processes", "terrierql:TerrierQLParser,"
    + "parsecontrols:TerrierQLToControls,"
    + "parseql:TerrierQLToMatchingQueryTerms,"
    + "matchopql:MatchingOpQLParser,"
    + "applypipeline:ApplyTermPipeline,"
    + "localmatching:LocalManager$ApplyLocalMatching,"
    + "filters:LocalManager$PostFilterProcess");

    // Enable the decorate enhancement
    ApplicationSetup.setProperty("querying.postfilters", "decorate:org.terrier.querying.SimpleDecorate");

    // Create a new manager run queries
    Manager queryingManager = ManagerFactory.from(index.getIndexRef());

    // Create a search request
    SearchRequest srq = queryingManager.newSearchRequestFromQuery("search for document");

    // Specify the model to use when searching
    srq.setControl(SearchResult.CONTROL_WMODEL, "BM25"); //THERE IS AN ERROR OVER HERE, ITS SHOWING ME A RED LINE ON SEARCHRESULT AND I CANNOT FIND SEARCHRESULT PARAMETER EVEN ON MAVEN REPOSITORY

    // Enable querying processes
    srq.setControl("terrierql", "on");
    srq.setControl("parsecontrols", "on");
    srq.setControl("parseql", "on");
    srq.setControl("applypipeline", "on");
    srq.setControl("localmatching", "on");
    srq.setControl("filters", "on");

    // Enable post filters
    srq.setControl("decorate", "on");

    // Run the search
    queryingManager.runSearchRequest(srq);

    // Get the result set
    ScoredDocList results = srq.getResults();

    // Print the results
    System.out.println("The top "+results.size()+" of documents were returned");
    System.out.println("Document Ranking");
    int rank = 0;
    for(ScoredDoc doc : results) {
        int docid = doc.getDocid();
        double score = doc.getScore();
        String docno = doc.getMetadata("docno");
        System.out.println("   Rank "+ (rank++)+": "+docid+" "+docno+" "+score);
    }
} }