Solr在使用的过程中会出现比较多的问题,这里参考solr4.3本地数据提交异常分析给出几种缺少包导致的异常及相关解决
异常一:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/NoHttpResponseException
Caused by: java.lang.ClassNotFoundException: org.apache.http.NoHttpResponseException
这个异常在整个项目中没有错误提示,在运行时报错,导致这个异常的原因是项目工程中缺少 httpcore-4.X.X.jar 包,具体jar版本由自己决定,建议使用最新的jar包。将此jar包导入项目中,再次运行问题解决,若报告该jar包,依然报错,请检查包放置的路径是否正确。
异常二:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/methods/HttpRequestBase
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.methods.HttpRequestBase
异常二中的报错现象,同一类似,也是因为缺少jar包造成的,将 httpclient-4.X.X.jar包导入到项目中即可。
异常三:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/entity/mime/content/ContentBody
Caused by: java.lang.ClassNotFoundException: org.apache.http.entity.mime.content.ContentBody
这个异常是我本人在项目中忘记导入httpmime-4.X.X.jar包导致的,导入这个包即可解决问题
异常四:
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
缺少slf4j-api-1.6.6.jar包
异常五:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" org.apache.solr.client.solrj.beans.BindingException: class: class com.ered.entry.Item does not define any fields.
针对异常四中的jar包,一般都会伴随 slf4j-log4j12-1.6.6.jar 包共同使用,此处异常就是因为缺少slf4j-log4j12-1.6.6.jar 包造成,将jar包导入工程中问题解决。
提供一个下载相关jar包的连接,solr相关jar包,这个是我项目中使用的相关jar包,需要的可以拿去。