我通过更改QueryParser.jj语法为Lucene QueryParser开发了一个自定义。将此部署到Solr的一种方法是通过编译新的lucene核心来修改Solr war文件。
另一方面,Solr级别的新查询解析器可以作为二进制依赖项(jar)部署到Solr core的lib目录中,这非常方便。
是否有类似的方式来部署我的自定义? 我可以将我的lucene-core二进制依赖项部署到core的lib目录或其他地方,但是Solr war文件?
UPD:对答案的评论包含我实施背后的思考过程。
UPD2:我写了一篇关于我的发现的博文:http://dmitrykan.blogspot.fi/2014/03/implementing-own-luceneqparserplugin.html
答案 0 :(得分:2)
据我所知,您可以编写自己的解析器(使用新名称),将此jar放入lib
文件夹,并将相应的<queryParser>
添加到solrconfig.xml
。见an example of a query parser,由John Berryman @JnBrymn实施。