对于客户,我需要编写一个在Linux上运行的搜索引擎。我正在使用 SolrJ,到目前为止没有配置任何其他内容。
我遵循了 https://lucene.apache.org/solr/guide/7_4/using-solrj.html#common-build-systems,因此在pom.xml项目中添加了SolrJ,以及该教程。
SolR客户端的实例化如下:
solrClient = new HttpSolrClient.Builder(
GeneralSettings.getRootSolrPath() + "/" + getCollectionName()).
build();
但是对于任何查询或提交,我不断得到org.apache.solr.client.solrj.SolrServerException: Server refused connection at: http://localhost:8983/solr/test
.我读了 http://lucene.472066.n3.nabble.com/Default-query-error-quot-Server-refused-connection-quot-td4010806.html 但我已经在使用预期的端口。
我对java文档SolrClient ’s handle the work of connecting to and communicating with Solr, and are where most of the user configuration happens.
的理解是,我只需要导入jar,然后一切都会开箱即用。
但是当我不断收到此"服务器拒绝连接"错误时,我可能必须配置一些东西,但我找不到如何配置 SolrJ(使用solrconfig.xml
或core.properties
或调用System.setProperty
或调用 API(。
请注意,Apache可能在某个地方运行,因为我曾经在上面测试过一些网站。
那么如何摆脱这个"服务器拒绝连接"错误呢?
任何帮助或教程来设置基于Solr可用文档的SolrJ将不胜感激,
编辑2018-08-12 16:10
我认为SolrJ可以像Lucene一样工作,没有服务器,但看起来我错过了一个基本部分:安装Solr(见 https://www.baeldung.com/apache-solrj(。我会试一试并发布更新。
如果它可能有助于其他人从 SolrJ 开始,以下是我为摆脱标题中提到的错误所做的步骤(实际上我遵循了 https://www.baeldung.com/apache-solrj(。
- 下载了最新的二进制版本 Solr
- 在某处提取
- CD到那个目录
- 从该目录开始的拉什箱/溶胶
- 使用 bin/solr 创建 -c coreName 创建了一个核心(也许存在另一种方式,但到目前为止我无法使其工作(
然后Solr在端口8983上运行和侦听,我的Java应用程序可以通过SolrJ连接到它。