Solr 模块

Solr 模块是 Solr 插件附加组件,不属于 solr-core,但由 Solr 项目正式维护。它们提供明确定义的功能,例如“提取”模块,该模块允许用户使用 Apache Tika 索引富文本文档。单个模块可以包含多个插件。模块以前称为“contrib”。

每个模块在构建中生成一个单独的 .jar 文件,打包在模块的 lib/ 目录中。模块所需的所有其他依赖项(Solr 核心未提供)也打包在那里。这有助于保持 Solr 的主核心小巧精简。

Solr 模块不包含在 Solr 二进制发行版的 slim 变体中。请下载/安装完整的 Solr 二进制发行版,以便使用 Solr 模块。

安装模块

启用模块最简单的方法是在系统属性 solr.modules 或环境变量 SOLR_MODULES 中列出你打算使用的模块(例如,在 solr.in.shsolr.in.cmd 中)。你还可以向 solr.xml 添加 <str name="modules"> 标记。预期值是以逗号分隔的模块名称列表,例如 SOLR_MODULES=extracting,ltr。这将使配置的模块的功能对 Solr 中的每个集合可用。

你还可以指定在使用 Solr CLI 启动 Solr 时要包含的模块

bin/solr start -e techproducts -Dsolr.modules=scripting
如果你只想为某些集合启用模块,则可以在适用的配置集中向 solrconfig.xml 添加 <lib> 标记。如 库目录 中所述。如果模块已针对每个集合(<lib>)或整个 Solr 节点启用,则集合级插件将起作用。由于配置集配置集合而不是节点,因此在 solrconfig.xml 中使用 <lib> 选项时,节点级插件(例如在 solr.xml 中指定的插件)将不起作用。它们必须针对整个 Solr 节点启用,如上所述。

某些模块可能已作为 包管理器 的包提供,通过列出可用包进行检查。