У меня есть большой TDB Apache Jena, я хочу создать индекс Lucene с использованием Apache Jena 2.10.2 для использования с новой функцией текстового поиска. Мне трудно следовать документации.
Сначала я попытался использовать конфигурацию в коде, но у меня возникли проблемы с зависимостями. Любая комбинация lecene-core и solr-solrj приведет либо к определенным ошибкам classNotFound, либо к ошибке StandardAnalyzer переопределяет конечный метод tokenStream. Пример кода:
Dataset ds1 = DatasetFactory.createMem() ;
EntityDefinition entDef = new EntityDefinition("uri", "text", RDFS.label) ;
Directory dir = new RAMDirectory();
// Have also tried creating the index in a file
File indexDir = new File("luceneIndexes");
Directory dir = FSDirectory.open(indexDir);
// Fails on this line
Dataset ds = TextDatasetFactory.createLucene(ds1, dir, entDef) ;
Я думаю, что единственным решением может быть создание ассемблера набора текстовых данных, но если у кого-то есть совет по созданию этого в коде, я бы предпочел сделать это таким образом.