2013-02-01 22 views
48

जब Surefire 2.6 से Surefire 2.13 में अपग्रेड किया जाता है, तो मुझे अपने यूनिट परीक्षण चलाते समय TypeNotPresentExceptionProxy मिलता है।TypeNotPresentExceptionProxy

java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy 
    at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:653) 
    at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:460) 
    at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286) 
    at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222) 
    at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69) 
    at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52) 
    at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070) 
    at java.lang.Class.getAnnotation(Class.java:3029) 
    at org.apache.maven.surefire.common.junit4.JUnit4TestChecker.isValidJUnit4Test(JUnit4TestChecker.java:64) 

JUnit4TestChecker में, लाइन 64 इस तरह दिखता है:

Annotation runWithAnnotation = testClass.getAnnotation(runWith); 

तो अचूक निरीक्षण @RunWith एनोटेशन यकीन है कि अपनी तरह वैध है बनाने के लिए। हमारे परीक्षण का उपयोग स्प्रिंग, तो @RunWith हमारे परीक्षण कक्षाओं में इस तरह दिखता है:

@RunWith(SpringJUnit4ClassRunner.class) 

ऐसा लगता है अचूक तरह SpringJUnit4ClassRunner वर्ग नहीं मिल रहा है। मुझे यकीन नहीं है कि क्यों से Surefire 2.6 के तहत, परीक्षण ठीक चलते हैं।

कोई विचार?

+1

एक बग की तरह लगता है। यदि आप पहले से कोई नहीं हैं तो क्या आप एक [बग रिपोर्ट] (http://jira.codehaus.org/browse/SUREFIRE) बना सकते हैं। –

+1

आपके इनपुट के लिए धन्यवाद। मैं एक नई, सरल परियोजना बनाने की कोशिश करूंगा जो एक ही मुद्दे को प्रदर्शित करता है। फिर एक बग रिपोर्ट खोलें। – gangsta

+5

क्या आपने 2.18.1 पर इस दौरान नए संस्करण के कारण की जांच की है? – khmarbaise

उत्तर

2

भागो mvn निर्भरता: हल

कि में crept हो सकता है JUnit के किसी भी 3.x संस्करण को शामिल न करें

अगर वहाँ यह TestNG एनोटेशन लोड और नहीं होगा, सुनिश्चित करें कि कोई TestNG निर्भरता देखते हैं बनाओ। जिनकी आपको जरूरत है