Java 未找到类别定义:org/glassfish/hk2/ComponentException
我需要为Jersey应用程序编写junit测试。现在我想测试依赖注入,问题是我创建了如下类:Java 未找到类别定义:org/glassfish/hk2/ComponentException,java,maven,testing,jersey,hk2,Java,Maven,Testing,Jersey,Hk2,我需要为Jersey应用程序编写junit测试。现在我想测试依赖注入,问题是我创建了如下类: @RunWith(Hk2Runner.class) public class BinderTest { @Inject private SomeClass someClass; @Test public void passingTest() { someClass.getSomething("asd", "asd", "asd"); As
@RunWith(Hk2Runner.class)
public class BinderTest {
@Inject
private SomeClass someClass;
@Test
public void passingTest() {
someClass.getSomething("asd", "asd", "asd");
Assert.assertTrue(true);
}
}
运行时,输出为:
java.lang.NoClassDefFoundError: org/glassfish/hk2/ComponentException
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
我正试图找到要将该类添加到pom.xml文件中的依赖项,但什么也找不到。。
你们知道哪个maven依赖项包含提到的ComponentException类吗
为了拥有Hk2Runner类而添加的依赖项:
org.glassfish.hk2
自动依赖
2.0.5
由于您使用的是旧的自动依赖关系
依赖关系,因此还应添加依赖关系:
org.glassfish.hk2
并从org.jvnet.hk2.testing.junit.HK2Runner
类扩展
org.glassfish.hk2
hk2测试
2.3.0
测试
是的,现在依赖项的问题已经解决:)我只留下了hk2 junitrunner依赖项。但是现在的问题是:org.glassfish.hk2.api.unsatifieddependencyException:SystemInjecteeImpl没有可供注入的对象(requiredType=CodeProvider,parent=BinderTest,qualifiers={},position=-1,optional=false,self=false,unqualified=null,1047503754)我如何将类注入这个测试类?@azalut-Hmm,我不记得是否自动调用之前的。您应该尝试在
之前覆盖,并调用,以便搜索您的@服务
类(请参阅Javadoc)。
public class BinderTest extends HK2Runner { }