1
customField = Mockito.mock(CustomField.class);

While mocking the CustomField I am getting the following error:

java.lang.NoClassDefFoundError: org/apache/lucene/search/FieldComparatorSource
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.getDeclaredMethods(Unknown Source)
at org.mockito.cglib.core.ReflectUtils.addAllMethods(ReflectUtils.java:349)
at org.mockito.cglib.core.ReflectUtils.addAllMethods(ReflectUtils.java:356)
at org.mockito.cglib.proxy.Enhancer.getMethods(Enhancer.java:427)
at org.mockito.cglib.proxy.Enhancer.generateClass(Enhancer.java:457)
at org.mockito.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)
at org.mockito.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:217)
at org.mockito.cglib.proxy.Enhancer.createHelper(Enhancer.java:378)
at org.mockito.cglib.proxy.Enhancer.createClass(Enhancer.java:318)
at org.mockito.internal.creation.cglib.ClassImposterizer.createProxyClass(ClassImposterizer.java:123)
at org.mockito.internal.creation.cglib.ClassImposterizer.imposterise(ClassImposterizer.java:57)
at org.mockito.internal.creation.cglib.ClassImposterizer.imposterise(ClassImposterizer.java:49)
at org.mockito.internal.creation.cglib.CglibMockMaker.createMock(CglibMockMaker.java:24)
at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:33)
at org.mockito.internal.MockitoCore.mock(MockitoCore.java:59)
at org.mockito.Mockito.mock(Mockito.java:1285)
at org.mockito.Mockito.mock(Mockito.java:1163)
at ut.com.sony.secdev.jiralastCommentTestCase.MyComponentUnitTest.getupdateCustomFieldValue(MyComponentUnitTest.java:191)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Caused by: java.lang.ClassNotFoundException: org.apache.lucene.search.FieldComparatorSource
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 49 mor

How can I resolve the issue?

Markus
  • 2,071
  • 4
  • 22
  • 44
  • 1
    Possible duplicate of [Why am I getting a NoClassDefFoundError in Java?](https://stackoverflow.com/questions/34413/why-am-i-getting-a-noclassdeffounderror-in-java) – Adonis Jul 21 '17 at 07:49
  • Can you show us CustomField? Your stack trace implies that (a) there is a public method on CustomField which references org.apache.lucene.search.FieldComparatorSource and (b) org.apache.lucene.search.FieldComparatorSource is not on your test classpath. – glytching Jul 24 '17 at 10:33

1 Answers1

4

Thanks for the responses. Issue got resolved when I added the lucene-core dependency:

<dependency>
    <groupId>org.apache.lucene</groupId>
    <artifactId>lucene-core</artifactId>
    <version>4.7.0</version>
</dependency>
itachi
  • 3,389
  • 2
  • 24
  • 29
  • One can also add `test` if the dependency is not going to be used during the application run, so it's not attached to the final JAR. My JIRA plugin doesn't need this dependency to run properly, it's needed only by tests. – itachi Aug 14 '19 at 12:34