YUCA: Eine leichte, in Memory, schnelle und einfach zu verwendende Suchmaschinenbibliothek.
Wenn Ihre App nicht verarbeiten kann oder nicht wirklich eine vollständige und schwere Suchmaschine wie Lucene installieren muss oder Sie auch nicht von einer SQL -Datenbank für die Indexierung und durch einfache Suchbasis angewiesen sind, können Sie YUCA verwenden, um Dokumente unter einer beliebigen Anzahl von beliebigen Schlüssel zu indexieren, die unter Tags gruppiert werden können.
Die gemeinsame Bibliothek wiegt derzeit ~ 170 KB ohne Verpackungsoptimierungen. Wir hoffen, die Größe in naher Zukunft weiter zu verringern.
Anforderungen:
Anweisungen:
Erstellen Sie Ihr Makefile zum ersten Mal mit CMake
$ cmake .
dann danach nur bauen
$ make -j 8
Freigegebene und statische Bibliotheken werden im Stammordner des Projekts sowie yuca_demo_shared und yuca_demo_static ausführbare verfügbar sein, mit denen Sie testen können, dass alles korrekt mit den gemeinsam genutzten und dynamischen Bibliotheken kompiliert und verknüpft wurde.
Es gibt auch eine ausführbare yuca_tests -Datei, falls Sie sicherstellen möchten, dass alle Unit -Tests durchgeführt werden.
Der swig -Ordner enthält SWig -Skripte und hochrangige Wrapper, um Yuca aus anderen Programmiersprachen zu verwenden, wobei der erste java ist.
Die derzeitige Absicht ist, dass swig/build.sh ein einstufiger Erstellungsprozess sein kann, um Bindungen für andere Sprachen zu erstellen.
Im Moment ist es ein sehr grobes Skript, das Java -Bindungen erzeugt und derzeit Bindungen für Java auf MacOS unterstützt, da wir noch früh in der Entwicklung der Bindungen sind. Langfristig werden Optionen zum Build.Sh übergeben, um Bindungen für die Sprache und Architektur Ihrer Wahl auszugeben.
Um JNI -Bingings zu erstellen, achten Sie, dass die C ++ - Bibliothek wie im Abschnitt "Vorherbauer Anweisungen" und dann:
$ cd swig
$ ./build.sh
Dadurch wird programmatisch C ++ JNI -Code und Java -Code erstellt, um auf die JNI Native Wrapper in einem swig/java -Ordner zuzugreifen. Dort haben wir SearchRequest Java Document Indexer StringKey Java Programmer Friendly SearchResult ist com.guacal.yuca.*
Wenn Sie Bibliotheken mit Debug -Symbolen erstellen möchten, bearbeiten Sie CMakeLists.txt und wenden Sie sich an die Einstellung CMAKE_BUILD_TYPE ,
# If you need step by step debugging, uncomment below,
# or invoke `cmake -DCMAKE_BUILD_TYPE=Debug .` in the command line
#set(CMAKE_BUILD_TYPE Debug)
Sie müssen cmake . Nochmals einen make clean und Wiederaufbau mit make -j 8 durchführen
Bitte eröffnen Sie ein Problem im GitHub -Problem -Tracker, wenn Sie Probleme und Ideen haben. Wenn Sie sich ausdehnen oder patchen möchten, öffnen Sie zuerst ein Problem, damit Sie Ihre Zeit nicht verschwenden, um etwas zu codieren, das aus einem guten Grund möglicherweise nicht akzeptiert wird.
Dieses Projekt ist im Rahmen der MIT -Lizenz erhältlich, die öffentlich verheiratet veröffentlicht wurde. 9. Mai 2018