Yuca: น้ำหนักเบา, ในหน่วยความจำ, เร็วและง่ายต่อการใช้ไลบรารีเครื่องมือค้นหา
หากแอปของคุณไม่สามารถจัดการหรือไม่จำเป็นต้องติดตั้งเครื่องมือค้นหาที่โดดเด่นและหนักเช่น Lucene และคุณไม่ต้องการพึ่งพาฐานข้อมูล SQL สำหรับการจัดทำดัชนีและทำการค้นหาแบบง่าย ๆ คุณสามารถใช้ YUCA เพื่อจัดทำดัชนีเอกสารภายใต้คีย์โดยพลการใด ๆ ที่สามารถจัดกลุ่มได้ภายใต้แท็ก
ปัจจุบันห้องสมุดที่ใช้ร่วมกันมีน้ำหนัก ~ 170KB โดยไม่มีการเพิ่มประสิทธิภาพการบรรจุใด ๆ เราหวังว่าจะลดขนาดต่อไปในอนาคตอันใกล้
ความต้องการ:
คำแนะนำ:
ครั้งแรกสร้าง makefile ของคุณด้วย cmake
$ cmake .
หลังจากนั้นก็สร้าง
$ make -j 8
ห้องสมุดที่ใช้ร่วมกันและคงที่จะพร้อมใช้งานในโฟลเดอร์รูทของโครงการเช่นเดียวกับ yuca_demo_shared และ yuca_demo_static Executables ที่คุณสามารถใช้เพื่อทดสอบว่าทุกอย่างได้รับการรวบรวมและเชื่อมโยงอย่างถูกต้องทั้งไลบรารีที่ใช้ร่วมกันและไดนามิก
นอกจากนี้ยังมี yuca_tests ที่ปฏิบัติการได้ในกรณีที่คุณต้องการให้แน่ใจว่าการทดสอบหน่วยทั้งหมดผ่านไป
โฟลเดอร์ swig ถือสคริปต์ Swig และ wrappers ระดับสูงเพื่อใช้ Yuca จากภาษาการเขียนโปรแกรมอื่น ๆ เป็นครั้งแรกที่เป็น java
ความตั้งใจในปัจจุบันคือการให้ swig/build.sh เป็นกระบวนการสร้างขั้นตอนเดียวเพื่อสร้างการผูกสำหรับภาษาอื่น ๆ
สำหรับตอนนี้มันเป็นสคริปต์ที่คร่าวๆที่จะสร้างการผูก Java ปัจจุบันรองรับการผูกมัดสำหรับ Java บน MacOS เนื่องจากเรายังคงอยู่ในช่วงต้นของการพัฒนาการผูก ในระยะยาวตัวเลือกจะถูกส่งผ่านไปยัง build.sh เพื่อการผูกเอาท์พุทสำหรับภาษาและสถาปัตยกรรมที่คุณเลือก
ในการสร้าง Jni Bingings กำปั้นให้แน่ใจว่าได้สร้างห้องสมุด C ++ ตามที่อธิบายไว้ในส่วนคำแนะนำการสร้างก่อนหน้านี้แล้ว:
$ cd swig
$ ./build.sh
สิ่งนี้จะส่งออกรหัส C ++ JNI และรหัส Java เพื่อเข้าถึง wrappers ดั้งเดิมของ JNI ภายในโฟลเดอร์ swig/java ในนั้นเรามีแพ็คเกจ Java ซึ่งเป็น Java Programmer Friendly 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