簡體   English   中英

使用Java進行Solr插入

[英]Solr Insertion Using java

import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.common.SolrInputDocument;
import java.io.IOException;

public class FeedIntoSolr{

    public static void main(String[] args) throws IOException, SolrServerException {
        HttpSolrServer server = new HttpSolrServer("http://localhost:8983/solr");

        for(int i=0;i<1000;++i) {
            SolrInputDocument doc = new SolrInputDocument();
            doc.addField("cat", "book");
            doc.addField("id", "book-" + i);
            doc.addField("name", "The Legend of the Hobbit part " + i);
            server.add(doc);
            if(i%100==0) 
                server.commit();  // periodically flush
        }
        server.commit();
    }
}
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpRequestBase
    at FeedIntoSolr.main(FeedIntoSolr.java:9)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpRequestBase
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 1 more

您在類路徑中缺少httpclient的jar。

確保您的類路徑中有這個jar,並且應該擺脫此錯誤。

您需要添加http客戶端實現您可以使用maven更新pom.xml

   <dependency>
    <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpclient</artifactId>
      <version>4.5.1</version>
   </dependency>

或從https://hc.apache.org/downloads.cgi下載它,並通過Project> Properties> Build Path將其添加到Eclipse中的類路徑中

感謝所有人的答復。.我得到了我所問問題的答案。

1)首先,您需要添加solr文件夾中已經可用的jar文件(解壓縮后會看到)

2)文件夾solr-5.2.1-> dist(僅在類路徑中添加solr-solrj-5.2.1.jar)和solr-> dist-> solrj-lib(在類路徑中添加所有jar )中的Jar文件

3)您必須添加兩個其他文件commons-logging-1.2.jarslf4j-simple-1.7.12.jar

這對我有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM