2013-10-18 19 views
19

मैं अपनी परियोजना के लिए जर्सी का उपयोग कर रहा हूं और एक स्ट्रिंग से यूआरआई को पार्स करने की कोशिश कर रहा हूं।org.glassfish.jersey.internal.RuntimeDelegateImpl नहीं मिला

UriBuilder.fromUri("http://localhost:8000").build(); 

कोड सरल है, लेकिन मैं नीचे

java.lang.ClassNotFoundException: org.glassfish.jersey.internal.RuntimeDelegateImpl 

यह कार्यक्रम प्रतिनिधि नहीं मिल सकता है लगता है एक त्रुटि मिलती है। मैंने पहले से ही javax.ws.rs.core.UriBuilder आयात किया है और jersey-common 2.0 है जिसमें मेरे निर्माण पथ में प्रतिनिधि होना चाहिए। लेकिन मुझे अभी भी यह त्रुटि मिलती है।

क्या कोई इसे ठीक करने के बारे में जानता है? धन्यवाद!

उत्तर

45

आप Maven का उपयोग कर रहे हैं, तो निम्न निर्भरता का उपयोग करें:

<dependency> 
    <groupId>org.glassfish.jersey.core</groupId> 
    <artifactId>jersey-common</artifactId> 
    <version>2.22.2</version> 
    <scope>test</scope> 
</dependency> 

Gradle के लिए, निम्न काम करेगा:

testCompile 'org.glassfish.jersey.core:jersey-common:2.22.2' 
+2

क्या आप समझा सकते हैं कि इसे इस निर्भरता की आवश्यकता क्यों है –

+3

यदि आप javax.ws.rs.ext.RuntimeDelegate # findDelegate देखते हैं, तो आप देखेंगे कि यह org.glassfish.jersey.internal.RuntimeDelegateImpl का उपयोग करने के लिए डिफ़ॉल्ट है। उत्पादन में आपके पास शायद कुछ अन्य कार्यान्वयन हो, लेकिन यह आपके परीक्षणों के लिए उपलब्ध नहीं है। –

+0

सीएक्सएफ से वसंत-एमवीसी में संक्रमण करते समय मैंने कुछ सीएक्सएफ निर्भरताओं को हटा दिया था। जैसा कि आपने सुझाव दिया है कि निर्भरता को जोड़ना निर्भरता जोड़ना। एंड्रयू स्वान के स्पष्टीकरण के लिए – mojave

2

मेरे मामले में समस्या के लिए एक और जार नामित इस्तेमाल किया जा रहा था : javax.ws.rs-api-2.0.jar

उस जार को हटाने से मेरी समस्या हल हो गई।

जार है कि मैं का इस्तेमाल किया है:

<include name="jersey-client-1.9.jar" /> 
<include name="jersey-core-1.9.jar" /> 
<include name="jersey-multipart-1.9.jar" /> 
2

एक Wildfly 10.1 क्रम के खिलाफ विकासशील मैं में जर्सी परिचय नहीं करना चाहता था मेरी बनाता है। ग्रैडल के साथ मैंने

testRuntime "org.jboss.resteasy:resteasy-jaxrs:$versions.resteasy" 

रेस्टेसी संस्करण 3.0.19 है। अंतिम। यह जार एक प्रवेश

org.jboss.resteasy.spi.ResteasyProviderFactory 
1
<dependency> 
    <groupId>org.glassfish.jersey.core</groupId> 
    <artifactId>jersey-common</artifactId> 
    <version>2.26</version> 
    <scope>test</scope> 
</dependency> 

मैं जावा 8 के साथ मुद्दों में पड़ गए और जर्सी-आम 2.22.2 लेकिन 2.26 काम के साथ

META-INF/services/javax.ws.rs.ext.RuntimeDelegate 

शामिल हैं।

संबंधित मुद्दे