2013-04-15 5 views
0

테스트 이유로 나는 로컬로 EmbeddedSolrSolver를 사용하려고합니다. 테스트 용으로 만 삭제되었습니다. 나는 여전히 오류solr java.lang.NoClassDefFoundError : org/apache/solr/common/ResourceLoader

java.lang.NoClassDefFoundError: org/apache/solr/common/ResourceLoader 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClass(ClassLoader.java:787) 
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
at java.net.URLClassLoader.defineClass(URLClassLoader.java:447) 
at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
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:423) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:111) 
at pl.psnc.dl.wf4ever.searchserver.solr.SolrSearchConfigTest.testCos(SolrSearchConfigTest.java:23) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:601) 
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) 
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) 
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) 
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) 
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) 
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) 
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) 
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) 
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) 
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) 
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) 
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) 
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
Caused by: java.lang.ClassNotFoundException: org.apache.solr.common.ResourceLoader 
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:423) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
... 37 more 

이 예외에 익숙한 사람이되어 gettinga 생각이 예

http://balabtech.wordpress.com/2011/10/13/embedded-solr-server-using-java/

공식 위키뿐만 아니라

http://wiki.apache.org/solr/Solrj

를 fallowing했다? 건배

+1

'ResourceLoader' 클래스가 애플리케이션을 시작할 때 classpath에 없습니다. –

+0

Thx man. 그것은 쉽다. 나는 solr-core 종속성을 2에서 4로 업데이트했으며 작동합니다. – speedingdeer

답변

2

해결 됨, 버전 4에서 solrj가 solr-core 버전 <과 호환되지 않습니다. 4. Thx 많이 있습니다.

0

ResourceLoader을 포함하는 jar를 다운로드하고 this link.에서 맞는 버전을 다운로드하십시오.

NoClassDefFoundErrorClassNotFoundException은 클래스 경로에 필수 클래스가 없으면 발생합니다. 클래스 패스에 다운로드 한 항아리를 추가하십시오.

관련 문제