0

使用 Solrj 连接到 solr 索引。使用 jar solr-solrj-3.6.1.jar我通过添加下面的 maven 依赖项得到

<dependency>
   <groupId>org.apache.solr</groupId>
   <artifactId>solr-solrj</artifactId>
   <version>3.6.1</version>
</dependency>

我看到 CommonsHttpSolrServer 已被弃用,因此使用 HttpSolrServer 。在运行时,我收到以下错误,线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/http/client/HttpClient

仅仅添加solr-solrj-3.6.1.jar还不够?我应该添加更多依赖项吗?我还尝试添加 httpclient 4.1,它开始要求 org/apache/http/HttpRequestInterceptor。

4

3 回答 3

0

将此包添加到您的 Maven 依赖项:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.2.1</version>
</dependency>
于 2012-09-07T05:57:28.297 回答
0

添加了以下依赖项以使其正常工作

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.2.1</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.2.1</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpmime</artifactId>
    <version>4.2.1</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.5.8</version>
</dependency>
<dependency>
     <groupId>org.slf4j</groupId>
     <artifactId>slf4j-log4j12</artifactId>
     <version>1.5.8</version>
</dependency>
于 2012-09-07T06:53:56.167 回答
0

我的 solrj 简单项目使用以下依赖项:

      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.solr</groupId>
          <artifactId>solr-solrj</artifactId>
          <version>4.4.0</version>
        </dependency>
        <dependency>
          <groupId>org.apache.solr</groupId>
          <artifactId>solr-core</artifactId>
          <version>4.4.0</version>
        </dependency>
        <dependency>
          <groupId>org.apache.commons</groupId>
          <artifactId>commons-logging</artifactId>
          <version>1.1.3</version>
        </dependency>
      </dependencies>

之间,Maven 可以自动下载它们(比如我在 NetBeans 中启动了 Maven 的 Java Application,然后只是添加了依赖项)。此外,我只需要下载 commons-logging 1.1.3 库(http://commons.apache.org/proper/commons-logging/download_logging.cgi)。您可以在此处阅读有关库和依赖项的更多信息:( http://wiki.apache.org/solr/Solrj )。

于 2013-09-26T08:53:23.590 回答