我正试图在eclipse中运行我的第一个junit类。当我右键单击新类并选择run as junit时,它会导致我无法加载applicationcontext错误。 spring-servlet.xml的直接路径是正确的。
以下是代码:
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"file:C:/MyProject/WEB-INF/spring-servlet.xml"
})
public class MyUnitTest {
@Autowired
private ApplicationContext applicationContext;
@Before
public void setUp() {
}
@Test
public void testFunctionality() throws Exception {
assertTrue(true);
}
}
错误 -
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'aop:scoped-proxy'.
答案 0 :(得分:3)
直接路径 spring-servlet.xml是正确的。
不,不是。如果是的话,JUnit就会找到它。
我认为它应该是这样的:
@ContextConfiguration(locations={"file:///C:/MyProject/WEB-INF/spring-servlet.xml"
http://en.wikipedia.org/wiki/File_URI_scheme
更新:
您发布的错误消息表明您确实阅读了上下文XML,但是出现了错误。
我发现将我收到的任何错误消息粘贴到Google中会很有帮助。当我和你一起做的时候,它发给我的是:
检查缺少的JAR。