[Elasticsearch] java.lang.ClassNotFoundException: groovy.lang.GroovyClassLoader

Elastic/Elasticsearch 2015. 8. 24. 18:19

이 에러는 elasticsearch 프로젝트를 하나 만들어서 개발 하다 보면 경험하게 되는 메시지 입니다.


[에러]

java.lang.ClassNotFoundException: groovy.lang.GroovyClassLoader


이것은 groovy-all 과 lucene-expressions 에 대한 dependency 때문에 발생을 하는 것인데요.
이런 에러가 보기 싫으신 분들은 생성한 프로젝트의 pom.xml 에 아래 dependency 를 추가해 주시면 됩니다.


[pom.xml]

    <dependency>

      <groupId>org.codehaus.groovy</groupId>

      <artifactId>groovy-all</artifactId>

      <version>2.3.2</version>

      <scope>compile</scope>

      <optional>true</optional>

    </dependency>


    <dependency>

      <groupId>org.apache.lucene</groupId>

      <artifactId>lucene-expressions</artifactId>

      <version>4.10.2</version>

      <scope>compile</scope>

      <optional>true</optional>

    </dependency>

※ 여기서 주의 하셔야 할 점은 version 에 맞춰서 정보를 넣어 주셔야 한다는 것입니다.

※ elasticsearch 는 lucene 기반이기 때문에 version 은 꼭 확인 하셔야 합니다.


: