【发布时间】:2015-06-22 19:20:59
【问题描述】:
我正在尝试为集成测试创建一个嵌入式节点,但由于某种原因,我在创建缺少某些类的节点本身时遇到了一些异常,
我正在使用 maven,我唯一的与 ES 相关的导入就是这个
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>1.4.1</version>
</dependency>
这反过来带来了它需要的所有依赖项,包括 lucene。
异常发生在这段代码中:
@Bean(destroyMethod="close")
public Client transportClient() {
Node node = NodeBuilder.nodeBuilder().node(); //class not found
Client client = node.client();
return client;
}
异常如下:
1:
java.lang.ClassNotFoundException: groovy.lang.GroovyClassLoader
at java.net.URLClassLoader$1.run(URLClassLoader.java:372) ~[na:1.8.0_25]
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[na:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_25]
at java.net.URLClassLoader.findClass(URLClassLoader.java:360) ~[na:1.8.0_25]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_25]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) ~[na:1.8.0_25]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_25]
2:
java.lang.ClassNotFoundException: org.apache.lucene.expressions.Expression
at java.net.URLClassLoader$1.run(URLClassLoader.java:372) ~[na:1.8.0_25]
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[na:1.8.0_25]
at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_25]
at java.net.URLClassLoader.findClass(URLClassLoader.java:360) ~[na:1.8.0_25]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_25]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) ~[na:1.8.0_25]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_25]
at org.elasticsearch.script.ScriptModule.configure(ScriptModule.java:98) ~[elasticsearch-1.4.1.jar:na]
at org.elasticsearch.common.inject.AbstractModule.configure(AbstractModule.java:60) [elasticsearch-1.4.1.jar:na]
at org.elasticsearch.common.inject.spi.Elements$RecordingBinder.install(Elements.java:204) [elasticsearch-1.4.1.jar:na]
at org.elasticsearch.common.inject.spi.Elements.getElements(Elements.java:85) [elasticsearch-1.4.1.jar:na]
【问题讨论】:
-
你导入
static org.elasticsearch.node.NodeBuilder.*;了吗? -
这不是编译错误,而是运行时错误。是的,我已经导入了 Eclipse 想要编译的内容
-
我也遇到了同样的问题
标签: java maven elasticsearch lucene