Lucene index on disk

xrax

Aktives Mitglied
Hallo zusammen,

ich möchte den index den Lucene erstellt nicht im RAM sondern auf der Festplatte haben.

In den API Docs steht hierzu der hinweis:
Code:
 Analyzer analyzer = new StandardAnalyzer();
    // Store the index in memory:
    Directory directory = new RAMDirectory();
    // To store an index on disk, use this instead:
    //Directory directory = FSDirectory.open("/tmp/testindex");

Ich bekomme aber von Eclipse den Hinweis:
"The method open(Path) in the type FSDirectory is not applicable for the arguments (String)"

Wie mache ich nun "Path" oder was muss hier machen ?

Besten Dank
xrax
 
Die Lucene Version die du verwendest scheint nicht zu der Version deiner Docs zu passen. Bei Lucene ändert sich immer sehr viel von Version zu Version.

Einen Path kannst du auf 2 Weisen erzeugen:
1. java.nio.file.Paths.get(...)
2. new File(...).toPath()
 
Dankeschön.
Es hat jetzt auch geklappt. Leider aber nur auf dem Win 10 - Rechner.
Auf dem Ubuntu-Server bekomme ich die Fehlermeldung:
Code:
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.lucene.store.NIOFSDirectory.<init>(Ljava/nio/file/Path;)V
        at develope.LuceneDevelope.main(LuceneDevelope.java:67)
An der Angabe des Pfades zur jar sollte es nicht liegen. Ich kann ja vor dem Codeabschnitt Objekte daraus erzeugen. Woran kann das liegen ?
 

Neue Themen


Zurück
Oben