XLTSearch高性能、便携和可配置的桌面搜索应用程序/信息检索系统

网友投稿 659 2022-11-02

XLTSearch高性能、便携和可配置的桌面搜索应用程序/信息检索系统

XLTSearch高性能、便携和可配置的桌面搜索应用程序/信息检索系统

This project is no longer maintained.

XLTSearch

XLTSearch is a high-performance, portable and configurable desktop search application / information retrieval system intended for fast, full-text and metadata searches over a large but relatively unchanging collection of documents. XLTSearch uses the javaFX platform (X), the Apache Lucene full-text search library (L) and the Apache Tika content analysis toolkit (T). Other than Java and JavaFX 8, XLTSearch has no other external dependencies, enabling the creation of portable, fully searchable document repositories.

Current version: XLTSearch 0.1.0 includes Apache Lucene 4.6.1, Apache Tika 1.13 and SLF4J 1.7.7.

Download XLTSearch 0.1.0Changelog

Motivation

XLTSearch is inspired by two similar open-source projects: DocFetcher and FXDesktopSearch. Differences of note from these projects are:

XLTSearch supports all file types supported by Apache Tika.XLTSearch extracts a common set of metadata from all documents (where available) and makes these fields searchable.XLTSearch supports multiple indices over a set of documents, enabling the use of different analyzers / configurations for different applications.XLTSearch exposes the full functionality of the "classic" Lucene query parser to the user.XLTSearch is permissively licensed under the Apache License 2.0.

Unlike the above projects, however, XLTSearch does not monitor folders for updates. XLTSearch requires the user to explicitly initiate index updates. To enable portability (e.g. searchable document repository on a removable drive), XLTSearch assumes that all files in a selected folder are to be indexed and searched and there is currently no functionality to exclude specific files or folders: the selected folder and its entire contents are recursively indexed.

A folder may have any number of configurations, but only one folder and one configuration can be loaded at a given time. XLTSearch will index and search the files according to the selected configuration.

Installation and Usage

XLTSearch is packaged with its dependencies into a single executable "uber-jar" with no installation required. The jar file can be run either by double-clicking or by running java -jar xltsearch.jar at a command line.

System Requirements

Java JRE 8u40 or laterJavaFX 8u40 or later

A 64-bit JRE is recommended. If a 32-bit JRE is used, passing the option -Xmx1g may solve non-responsiveness or out-of-memory issues during indexing.

JavaFX is normally included in the Java JRE, but on some platforms, JavaFX is distributed separately. If you are using a Debian or Ubuntu-based system, JavaFX is included in the openjfx package. Run sudo apt-get install openjfx to install JavaFX.

Note that XLTSearch has not yet been tested on Java 9.

Build Instructions

To maintain a consistent development and build environment, XLTSearch is built using Apache Maven inside a Vagrant virtual machine. The Vagrantfile for the build environment is provided in this repository. The "uber-jar" is created using mvn package in the VM.

Contributing

All contributions (e.g. issue reports, pull requests, questions and comments) are encouraged. Suggestions on how to add new IR technologies, improve the code or prune / make better use of the dependency tree are especially welcome.

Authors

Evan Thompson (alvanson) - principal author

License

XLTSearch is licensed under the Apache License 2.0 and is provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Please ensure all data is backed up prior to running XLTSearch.

Acknowledgements

XLTSearch includes Apache Lucene, Apache Tika and SLF4J. Refer to NOTICE.txt for attribution notices.

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:BrainBox:Web应用程序,可以对3D大脑成像数据进行实时、协同注释、分割
下一篇:NIO之Buffer的clear()、rewind()、flip()方法的区别
相关文章

 发表评论

暂时没有评论,来抢沙发吧~