Юка: легкая, в память, быстро и простой в использовании библиотеки поисковых систем.
Если ваше приложение не может обрабатывать или действительно не нужно установить полную избранную и тяжелую поисковую систему, такую как Lucene, и вы не хотите зависеть от базы данных SQL для индексации и выполнения простых строк на основе поиска, вы можете использовать YUCA для индексации документов по любому количеству произвольных ключей, которые могут быть сгруппированы по тегам.
Общая библиотека в настоящее время весит ~ 170 КБ без каких -либо оптимизаций упаковки, мы надеемся уменьшить размер дальше в ближайшем будущем.
Требования:
Инструкции:
В первый раз создайте свой Makefile с Cmake
$ cmake .
Затем после этого просто построить
$ make -j 8
Общие и статические библиотеки будут доступны в корневой папке проекта, а также yuca_demo_shared и yuca_demo_static EXENCADADES, которые вы можете использовать, чтобы проверить, что все было собрано и правильно связано как с общими, так и с динамичными библиотеками.
Существует также исполняемый файл yuca_tests , если вы хотите убедиться, что все модульные тесты проходят.
В папке swig содержится сценарии SWIG и обертки высокого уровня, чтобы использовать YUCA из других языков программирования, первым из которых была java .
Текущее намерение состоит в том, чтобы swig/build.sh стал одноэтапным процессом сборки для создания привязки для других языков.
На данный момент это очень грубый сценарий, который создаст привязки Java, в настоящее время поддерживает привязки для Java на macOS, поскольку мы все еще в начале разработки привязки. В долгосрочной перспективе будут переданы опции для Build.sh для вывода привязки для языка и архитектуры по вашему выбору.
Чтобы построить JNI Bingings, FIST убедитесь, что он создал библиотеку C ++, как объяснено в предыдущем разделе «Инструкции по сборке», а затем:
$ cd swig
$ ./build.sh
Это будет выводить программно созданный C ++ JNI -код и код Java для доступа к нативным оберткам JNI в папке swig/java . Там у нас есть пакет Java, который является Java Programmer Programmer com.guacal.yuca.* Там вы найдете основные классы для использования YUCA в вашем Indexer приложения Java/Android, Document , StringKey , SearchRequest , SearchResult .
Если вы хотите построить библиотеки с символами отладки, редактируйте CMakeLists.txt и расстроен настройку 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)
Вам придется выполнить cmake . Опять же, выполните make clean и перестройте с помощью make -j 8
Пожалуйста, откройте проблему на трекере выпуска GitHub, если у вас есть какие -либо проблемы, идеи. Если вы хотите продлить или исправить, сначала откройте проблему, чтобы не тратить свое время на кодирование чего -то, что может быть не принято по уважительной причине.
Этот проект доступен по лицензии MIT, опубликованной публичной сб. 9 мая 2018 года