我正在尝试使用solrj构建一个solr查询。根据我对Solr-7.5.0的了解,应该在我的solr安装中包括solrj的所有库和依赖项。下面是我的/ dist文件夹,然后是我的/ dist / solrj-lib文件夹
现在,我的查询将被绑定到html发布表单,但我想让solrj首先工作。这是我的全部solpj
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.HttpSolrClient;
String queryInput = q;
SolrQuery query = new SolrQuery(queryInput);
SolrClient client = new HttpSolrClient.Builder (
"http://localhost:8983/solr/sqltest")
.build();
QueryResponse response = client.query(query);
SolrDocumentList list = response.getResults();
这将无法编译,因为它无法识别我的类(SolrClient,SolrQuery等)。我敢肯定,现在有无数问题,但我不确定从哪里开始。 作为附带的问题,我正在研究不在编译代码中的其他API。这些工具中的一种会更好地用于Web应用程序,还是使用Solrs本机solrj安全吗?
答案 0 :(得分:2)
您可以安全地使用SolrJ-实际上,如果您正在编写Java应用程序,则这是与Solr进行交互的推荐方式。除了下面提供的详细信息之外,请参见Using SolrJ - Building and Running SolrJ Applications。
我从屏幕快照中假设您正在Windows上-如果您在Linux或OS X上,则将;
替换为:
作为下面的路径分隔符。
要包含SolrJ jar,在运行-classpath ".;path-to-solr-solrj-7.5.0.jar
时需要包含一个javac
参数。这是编译应用程序所需的唯一jar。
运行它时,您必须包含在solrj-lib
路径中找到的jar。您可以通过在文件中包含java
的类路径参数来实现。使用java -classpath ".;path-to-solrj-lib\*
至include all the jar files in the directory。