Демонстрационный пример solr, не могу понять, куда поместить папку Java
Вопрос
Я следовал этому руководству, чтобы установить (несколько) экземпляров solr на tomcat.
http://wiki.apache.org/solr/SolrTomcat
Теперь я хочу настроить эту демо-версию, но она не работает.
http://www.ibm.com/developerworks/java/library/j-solr1/
Я собрал dw.war, как указано в демо-версии, и теперь получаю эту ошибку.
java.lang.NoClassDefFoundError: Could not initialize class org.apache.commons.httpclient.HttpClient
org.apache.dwexample.servlet.DWServlet.sendGetCommand(DWServlet.java:714)
org.apache.dwexample.servlet.DWServlet.processSubmitQuery(DWServlet.java:634)
org.apache.dwexample.servlet.DWServlet.doGet(DWServlet.java:120)
org.apache.dwexample.servlet.DWServlet.doPost(DWServlet.java:782)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
Подумав, что это ошибка в каталоге /tomcat/lib, скопировал файл commons-httpclient-3.0.jar в каталог /tomcat/lib и сделал
chcon -R -h -t httpd_sys_content_t /usr/share/apache-tomcat-6.0.18/lib/
Теперь я получаю две ошибки:
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:65)
org.apache.dwexample.servlet.DWServlet.sendPostCommand(DWServlet.java:663)
org.apache.dwexample.servlet.DWServlet.processSubmitCommand(DWServlet.java:596)
org.apache.dwexample.servlet.DWServlet.processIndexCommand(DWServlet.java:557)
org.apache.dwexample.servlet.DWServlet.processCommit(DWServlet.java:225)
org.apache.dwexample.servlet.DWServlet.doGet(DWServlet.java:100)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:65)
org.apache.dwexample.servlet.DWServlet.sendPostCommand(DWServlet.java:663)
org.apache.dwexample.servlet.DWServlet.processSubmitCommand(DWServlet.java:596)
org.apache.dwexample.servlet.DWServlet.processIndexCommand(DWServlet.java:557)
org.apache.dwexample.servlet.DWServlet.processCommit(DWServlet.java:225)
org.apache.dwexample.servlet.DWServlet.doGet(DWServlet.java:100)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
Хотелось бы узнать, как решить эти ошибки.Вывод журнала Cataling не дает много информации.
Ваше здоровье
Ке
Решение
Ваше первое исправление верно, вы просто пропустили другую библиотеку, которая Ведение журнала Jakarta Commons.Также получите JAR и поместите его в свои библиотеки.Обратите внимание, что впоследствии может быть больше зависимостей, он просто останавливается при первой ошибке.Вы уверены, что в пакете, который вы скачали с кучей JAR-файлов, нет папки «lib»?