我使用java客户端程序将数据添加到我的solr服务器中的索引中。我的来源如下: -
SolrServer solrServer = new HttpSolrServer("http://10.219.224.91:4040/solr/test");
System.out.println("<ul>");
String[] passengerType={"Infant","Handicapped","Unaccompanied minor", "General Category"};
for(int i = 0; i < 100; i++) {
SolrInputDocument solrInputDocument = new SolrInputDocument();
solrInputDocument.addField("id", new String("widget " + i));
// add three random categories
for(int j = 0; j < 3; j++) {
solrInputDocument.addField("category", passengerType[new Random().nextInt(passengerType.length)]);
}
solrInputDocument.addField("size", new Random().nextInt(10));
// this is cheating below - but saves us from the query string...
solrInputDocument.addField("text", "a");
solrServer.add(solrInputDocument);
System.out.println("<li> Adding: " + solrInputDocument + "</li>\n");
}
System.out.println("</ul>");
solrServer.commit();
在运行我正在运行的应用程序时: -
线程“main”中的异常java.lang.NoClassDefFoundError: org / noggit / CharArr at org.apache.solr.common.util.JavaBinCodec。(JavaBinCodec.java:474) 在 org.apache.solr.client.solrj.impl.BinaryResponseParser.processResponse(BinaryResponseParser.java:41) 在 org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:407) 在 org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:180) 在 org.apache.solr.client.solrj.request.AbstractUpdateRequest.process(AbstractUpdateRequest.java:117) 在org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:116) 在org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:102) 在IndexDriver.main(IndexDriver.java:39)引起: java.lang.ClassNotFoundException:org.noggit.CharArr at java.net.URLClassLoader $ 1.run(未知来源)at java.net.URLClassLoader $ 1.run(未知来源)at java.security.AccessController.doPrivileged(Native Method)at java.net.URLClassLoader.findClass(未知来源)at java.lang.ClassLoader.loadClass(未知来源)at sun.misc.Launcher $ AppClassLoader.loadClass(未知来源)at java.lang.ClassLoader.loadClass(未知来源)
错误即将出现在这一行 -
solrServer.add(solrInputDocument);
任何帮助都将受到高度赞赏。
答案 0 :(得分:8)
我认为您没有在程序中包含noggit-0.5.jar文件
从http://www.java2s.com/Code/Jar/n/Downloadnoggit05jar.htm
下载然后将其导入项目库。
答案 1 :(得分:0)
您也可以使用solr framework中提供的jar
例如,如果您使用solr4.7.2并且这些jar文件夹中存在solr-4.7.2 \ dist \ solrj-lib \