मैं एक NoSuchMethodError कैसे ठीक करूँ?


178

NoSuchMethodErrorमेरा जावा प्रोग्राम चलाते समय एक त्रुटि हो रही है । क्या गलत है और मैं इसे कैसे ठीक करूं?


11
नेटबीन्स में: प्रोजेक्ट्स टैब में प्रोजेक्ट पर राइट क्लिक करें, "क्लीन एंड बिल्ड" का उपयोग करें। मेरे लिए इसे हल किया।
हेंज़्लमेन

3
इंटेलीज आइडिया में भी, कभी
हॉक

जवाबों:


228

किसी भी अधिक जानकारी के बिना समस्या को इंगित करना मुश्किल है, लेकिन मूल कारण यह है कि आपने सबसे अधिक संभावना वर्ग के एक अलग संस्करण के खिलाफ एक वर्ग को संकलित किया है जो एक विधि को याद कर रहा है, जिसे आप इसे चलाते समय उपयोग कर रहे हैं।

स्टैक ट्रेस देखें ... यदि लायब्रेरी में किसी ऑब्जेक्ट पर किसी विधि को कॉल करते समय अपवाद दिखाई देता है, तो आप कंपाइलिंग और चलाने के दौरान लाइब्रेरी के अलग-अलग संस्करणों का उपयोग करने की संभावना रखते हैं। सुनिश्चित करें कि आपके पास दोनों जगहों पर सही संस्करण है।

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


3
हमने हाल ही में इनमें से एक का कारण खोजा और यह पता चला कि जावा सर्वर बंद होने से पहले बिल्ड प्रक्रिया कक्षा की फाइलें डाल रही थी, और हमने इसे मारा क्योंकि जावा सर्वर ने कुछ कक्षाएं लोड नहीं की थीं, और फिर उसने लोड किया कुछ लेकिन यह इन नए लोगों को मिला है, और चूंकि नए कोड ने उन तरीकों का उल्लेख किया है जो पुरानी कक्षाओं में नहीं थे ... बिंगो, NoSuchMethodError
vazor

"स्टैक ट्रेस देखें ..." - ठीक है, मैं लगभग हमेशा जाता हूं और Caused byस्टैक ट्रेस में अंतिम अनुभाग की जांच करता हूं ताकि अपराधी वर्ग / जार का पता लगाया जा सके
कृष्णप्रभाकर

108

मुझे आपकी समस्या हो रही थी, और यह है कि मैंने इसे कैसे तय किया। पुस्तकालय को जोड़ने के लिए निम्न चरण एक कार्य तरीका है। मैंने पहले दो चरणों को सही किया था, लेकिन मैंने अपने ग्रहण प्रोजेक्ट पर "lib" फ़ोल्डर में फ़ाइल सिस्टम से सीधे ".jar" फ़ाइल को खींचकर अंतिम एक नहीं किया था। इसके अतिरिक्त, मुझे लाइब्रेरी के पिछले संस्करण को बिल्ड पथ और "लिब" दोनों फ़ोल्डर से निकालना था।

चरण 1 - पथ बनाने के लिए .jar जोड़ें

यहां छवि विवरण दर्ज करें

चरण 2 - सहयोगी स्रोत और javadocs (वैकल्पिक)

यहां छवि विवरण दर्ज करें

चरण 3 - वास्तव में .jar फ़ाइल को "lib" फ़ोल्डर में खींचें (वैकल्पिक नहीं)

यहां छवि विवरण दर्ज करें


75
+1 के लिए "हर कोई आपसे यह जानने की कोशिश करता है कि इसका उपयोग कैसे करना है और यदि आप नहीं करते हैं तो वे आपके सवाल को कम कर देंगे।"
विक्रम

73

ध्यान दें कि प्रतिबिंब के मामले में, आपको एक मिलता है NoSuchMethodException, जबकि गैर-चिंतनशील कोड के साथ, आपको मिलता है NoSuchMethodError। जब मैं एक दूसरे के साथ सामना करता हूं तो मैं बहुत अलग-अलग जगहों पर देखता हूं।


दूसरे शब्दों में, आप कह रहे हैं कि यदि आप किसी कक्षा पर एक विधि प्राप्त करने के लिए प्रतिबिंब का उपयोग कर रहे हैं और विधि नहीं मिली है, तो आपको NoSuchMethodException मिलती है। लेकिन अगर आप ऐसे परिदृश्य में हैं जब आपने अपने कोड को कुछ परिवादों के खिलाफ संकलित किया है और सर्वर पर आपके पास अन्य परिवाद हैं (शायद नए पुराने) तो आपको NoSuchMethodError मिलता है। यदि मैं गलत हूं तो मुझे सही करों।
विक्टर

यह सही है, @ विक्टर
कृष्णप्रभा

51

यदि आपके पास जेवीएम मापदंडों को बदलने की पहुंच है, तो वर्बोज़ आउटपुट को जोड़ने से आपको यह देखने की अनुमति मिल सकती है कि कौन सी कक्षाएं किस JAR फ़ाइलों से लोड की जा रही हैं।

java -verbose:class <other args>

जब आपका कार्यक्रम चलाया जाता है, तो JVM को मानक जानकारी से बाहर फेंक देना चाहिए जैसे:

...

[भरा हुआ junit.framework.As File से:: / C: /Program%20Files/junit3.8.2/junit.jar]

...


3
+1 शानदार! मैंने इस विधि का उपयोग करके एक छोटी सी समस्या का हल किया, धन्यवाद। यह पता लगाने का एक शानदार तरीका है जब कक्षाओं ने किसी तरह एक क्लासपाथ पर अपना रास्ता छीन लिया है।
डंकन जोन्स

1
+1 आपने मेरा दिन बचाया! यह सिर्फ एक पुस्तकालय था जिसमें अपने स्रोतों में समान नामों के साथ पुरानी कक्षाएं शामिल थीं।
एंड्री नेमचेंको

12

यह आमतौर पर अपाचे चींटी जैसी बिल्ड सिस्टम का उपयोग करने के कारण होता है जो जावा फाइल को केवल तब संकलित करता है जब जावा फाइल क्लास फाइल की तुलना में नई होती है। यदि एक विधि हस्ताक्षर में परिवर्तन और कक्षाएं पुराने संस्करण की चीजों का उपयोग कर रही थीं, तो उन्हें सही तरीके से संकलित नहीं किया जा सकता है। सामान्य सुधार एक पूर्ण पुनर्निर्माण करना है (आमतौर पर "चींटी साफ" फिर "चींटी")।

कभी-कभी यह एक पुस्तकालय के एक संस्करण के खिलाफ संकलन करते समय भी हो सकता है लेकिन एक अलग संस्करण के खिलाफ चल रहा है।


1
वास्तव में, यह एक ऐसे मुद्दे की तरह लगता है जो जावा प्रोग्रामर के लिए क्रॉप करता है जो किसी भी जावा डेवलपमेंट फ्रेमवर्क का उपयोग कर रहे हैं: मावेन, नेटबीन्स और अपाचे एंट, जैसा कि आप यहां सभी उत्तरों से देख सकते हैं।
होल्डऑफहंगर

8

यदि मावेन या किसी अन्य ढांचे का उपयोग किया जाता है , और आपको यह त्रुटि लगभग अनियमित रूप से मिलती है, तो जैसे एक साफ इंस्टॉल करने का प्रयास करें ...

clean install

यह विशेष रूप से काम करने की संभावना है यदि आपने वस्तु लिखी है और आप जानते हैं कि इसकी विधि है। मेरे लिए काम किया।


ग्रैड बिल्ड के लिए भी यही स्थिति है।
जोनाथन लैंड्रम

4

यह प्रतिबिंब का उपयोग करने का परिणाम भी हो सकता है। यदि आपके पास एक कोड है जो एक वर्ग को दर्शाता है और नाम से एक विधि निकालता है (जैसे: साथ Class.getDeclaredMethod("someMethodName", .....)) तो किसी भी समय उस विधि का नाम बदल जाता है, जैसे कि एक रिफलेक्टर के दौरान, आपको मापदंडों को मैच करने के लिए प्रतिबिंब विधि से अपडेट करने के लिए याद रखना होगा नई विधि हस्ताक्षर, या getDeclaredMethodकॉल एक फेंक देंगेNoSuchMethodException

यदि यह कारण है, तो स्टैक ट्रेस को उस बिंदु को दिखाना चाहिए जो प्रतिबिंब विधि को लागू किया गया है, और आपको वास्तविक विधि हस्ताक्षर से मिलान करने के लिए बस मापदंडों को अपडेट करना होगा।

मेरे अनुभव में, यह कभी-कभार आता है जब यूनिट निजी तरीकों / क्षेत्रों का परीक्षण कर रही है, और TestUtilitiesपरीक्षण सत्यापन के लिए फ़ील्ड निकालने के लिए एक वर्ग का उपयोग कर रही है । (आम तौर पर विरासत कोड के साथ जिसे इकाई परीक्षण को ध्यान में रखकर नहीं बनाया गया था।)


3

यदि आप एक webapp लिख रहे हैं, तो सुनिश्चित करें कि आपके कंटेनर के वैश्विक पुस्तकालय निर्देशिका में जार के परस्पर विरोधी संस्करण नहीं हैं और आपके ऐप में भी। आप जरूरी नहीं जान सकते हैं कि क्लास लोडर द्वारा किस जार का उपयोग किया जा रहा है।

जैसे

  • बिल्ला / आम / lib
  • mywebapp / वेब-INF / lib

2

ये समस्याएं समान दो वर्गों में एक ही वस्तु के उपयोग के कारण होती हैं। उपयोग की गई वस्तुओं में नई विधि शामिल नहीं है कि नई वस्तु वर्ग शामिल है।

उदाहरण के लिए:

filenotnull=/DayMoreConfig.conf
16-07-2015 05:02:10:ussdgw-1: Open TCP/IP connection to SMSC: 10.149.96.66 at 2775
16-07-2015 05:02:10:ussdgw-1: Bind request: (bindreq: (pdu: 0 9 0 [1]) 900 900 GEN 52 (addrrang: 0 0 2000) ) 
Exception in thread "main" java.lang.NoSuchMethodError: gateway.smpp.PDUEventListener.<init>(Lgateway/smpp/USSDClient;)V
        at gateway.smpp.USSDClient.bind(USSDClient.java:139)
        at gateway.USSDGW.initSmppConnection(USSDGW.java:274)
        at gateway.USSDGW.<init>(USSDGW.java:184)
        at com.vinaphone.app.ttn.USSDDayMore.main(USSDDayMore.java:40)

-bash-3.00$ 

ये समस्याएँ सहवर्ती 02 समान वर्ग (src में 1, 1 जार फ़ाइल में यहाँ गेटवे है।) के कारण होती हैं।


2

इसका मतलब है कि संबंधित विधि कक्षा में मौजूद नहीं है:

  1. यदि आप जार का उपयोग कर रहे हैं तो विघटित करें और जांचें कि क्या जार के संबंधित संस्करण में उचित वर्ग है।
  2. जांचें कि क्या आपने अपने स्रोत से उचित वर्ग संकलित किया है।

2

मेरे लिए यह इसलिए हुआ क्योंकि मैंने एक्शन से, ए, स्ट्रिंग से ए में फंक्शन टाइप बदल दिया। मैं इसे साफ और फिर से निर्माण के साथ हल कर सकता था


2

मैंने अपने ग्रहण को पुनः आरंभ करके और प्रशंसा को चलाकर इस त्रुटि को हल कर दिया है। मेरे मामले का कारण हो सकता है क्योंकि मैं अपने प्रोजेक्ट या एक्लिप्स को बंद किए बिना अपने स्रोत फ़ाइलों को बदल देता हूं। जिसके कारण मैं विभिन्न वर्गों का उपयोग कर रहा था।


2

इस तरह से प्रयास करें: अपने प्रोजेक्ट निर्देशिकाओं के तहत सभी .class फ़ाइलों को हटा दें (और, निश्चित रूप से, सभी उपनिर्देशिकाएं)। पुनर्निर्माण।

कभी-कभी mvn clean(यदि आप मावेन का उपयोग कर रहे हैं) मैन्युअल रूप से निर्मित .class फ़ाइलों को साफ नहीं करता है javac। और उन पुरानी फाइलों में पुराने हस्ताक्षर शामिल हैं, जिसके कारण NoSuchMethodError


2

बस मौजूदा उत्तरों को जोड़ना। मैं इस मुद्दे को ग्रहण में टॉमकैट के साथ सामना कर रहा था। मैंने एक वर्ग बदला था और निम्नलिखित कदम उठाए थे,

  1. साफ किया और eclpise में परियोजना का निर्माण किया

  2. mvan साफ स्थापित

  3. टकटकी को फिर से शुरू किया

फिर भी मैं उसी त्रुटि का सामना कर रहा था। फिर मैंने टोमैट को साफ किया, टोमैट को काम करने वाली डायरेक्टरी को साफ किया और सर्वर को रिस्टार्ट किया और मेरा इश्यू चला गया। आशा है कि यह किसी की मदद करता है


1

मूल प्रश्न का उत्तर देने के लिए। यहाँ जावा डॉक्स के अनुसार :

"NoSuchMethodError" यदि कोई एप्लिकेशन वर्ग (या तो स्थिर या उदाहरण) की निर्दिष्ट विधि को कॉल करने का प्रयास करता है, और उस वर्ग की अब उस पद्धति की परिभाषा नहीं है।

आम तौर पर, यह त्रुटि संकलक द्वारा पकड़ी जाती है; यह त्रुटि केवल रन के समय में हो सकती है यदि किसी वर्ग की परिभाषा असंगत रूप से बदल गई हो।

  1. यदि यह रन टाइम में होता है, तो क्लास पथ में विधि युक्त क्लास की जांच करें।
  2. जांचें कि क्या आपने JAR का नया संस्करण जोड़ा है और यह विधि संगत है।

1

मैंने एक जुनिट टेस्ट फ़ाइल का नाम बदलकर एक्लिप्स में इस समस्या को ठीक किया।
मेरे ग्रहण कार्य स्थान में मेरे पास एक ऐप प्रोजेक्ट और एक टेस्ट प्रोजेक्ट है।
टेस्ट प्रोजेक्ट में बिल्ड पथ पर आवश्यक प्रोजेक्ट के रूप में ऐप प्रोजेक्ट है।

NoSuchMethodError प्राप्त करना शुरू किया।
तब मुझे एहसास हुआ कि टेस्ट प्रोजेक्ट में क्लास का भी वही नाम था जो ऐप प्रोजेक्ट में क्लास का था।

App/  
  src/
     com.example/  
       Projection.java
Test/  
  src/
     com.example/
       Projection.java

सही नाम "प्रोजेक्शनटेस्टवा" का नाम बदलने के बाद अपवाद दूर चला गया।


मेरा मुद्दा भी ऐसा ही था। मेरे पास एक ही पूर्ण विहित नाम के साथ एक निर्भरता वर्ग था। नाम बदलने के बाद अपवाद चला गया।
moralejaSinCuentoNiProverbio

1

मेरे पास एक ही त्रुटि थी:

  Exception in thread "main" java.lang.NoSuchMethodError: com.fasterxml.jackson.core.JsonGenerator.writeStartObject(Ljava/lang/Object;)V
        at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:151)
        at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:292)
        at com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3681)
        at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:3057)

इसे हल करने के लिए मैंने जाँच की, सबसे पहले, मॉड्यूल निर्भरता आरेख ( click in your POM the combination -> Ctrl+Alt+Shift+Uया right click in your POM -> Maven -> Show dependencies) यह समझने के लिए कि वास्तव में पुस्तकालयों (Intelij IDEA) के बीच संघर्ष कहाँ था। मेरे विशेष मामले में, मेरे पास जैक्सन निर्भरता के विभिन्न संस्करण थे।

यहां छवि विवरण दर्ज करें यहां छवि विवरण दर्ज करें

1) तो, मैंने सीधे प्रोजेक्ट के अपने पोम में स्पष्ट रूप से उच्चतम संस्करण जोड़ा - इन दोनों का 2.8.7।

गुणों में:

<jackson.version>2.8.7</jackson.version>

और निर्भरता के रूप में:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>${jackson.version}</version>
</dependency>

2) लेकिन यह भी निर्भरता बहिष्करण का उपयोग करके हल किया जा सकता है ।

नीचे उदाहरण के रूप में एक ही सिद्धांत द्वारा:

  <dependency>
      <groupId>group-a</groupId>
      <artifactId>artifact-a</artifactId>
      <version>1.0</version>
          <exclusions>
             <exclusion>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
             </exclusion>
         </exclusions>
  </dependency>

अवांछित संस्करण के साथ निर्भरता को आपकी परियोजना से बाहर रखा जाएगा।


1

मेरे मामले में मेरे पास एक मल्टी मॉड्यूल प्रोजेक्ट था और परिदृश्य मॉड्यूल की तरह com.xyz.TestClassथा Aऔर साथ ही मॉड्यूल Bऔर मॉड्यूल मॉड्यूल Aपर निर्भर था B। अतः असेंबली जार बनाते समय मुझे लगता है कि क्लास का केवल एक ही संस्करण बरकरार रखा गया था, अगर उसके पास इनवाइटेड विधि नहीं है, तो मुझे मिल रहा थाNoSuchMethodError रनटाइम अपवाद , लेकिन संकलन ठीक था।

संबंधित: https://reflectoring.io/nosuchmethod/


0

मैं एक समान समस्या में भाग गया जब मैं अपने आवेदन में विधि हस्ताक्षर बदल रहा था। मेरे प्रोजेक्ट की सफाई और पुनर्निर्माण ने "NoSuchMethodError" को हल किया।


0

उपरोक्त उत्तर बहुत अच्छी तरह से समझाता है .. एक बात जोड़ने के लिए यदि आप ग्रहण का उपयोग कर रहे हैं ctrl + shift + T का उपयोग कर रहे हैं और कक्षा की पैकेज संरचना दर्ज करें (जैसे: Gateway.smpp.PDUEventListener), तो आपको सभी जार / परियोजनाएँ मिलेंगी जहाँ यह मौजूद है । क्लासपैथ से अनावश्यक जार निकालें या क्लास पथ में ऊपर जोड़ें। अब यह सही उठाएगा।


0

मैं इसी तरह के मुद्दे पर भाग गया।

Caused by: java.lang.NoSuchMethodError: com.abc.Employee.getEmpId()I

अंत में मैंने पहचाना कि मूल कारण डेटा प्रकार के परिवर्तनशील है।

  1. Employee.java-> इसमें वैरिएबल शामिल है ( EmpId) जिसका डेटा प्रकार से बदल दिया गया intहै String
  2. ReportGeneration.java-> प्राप्त करने वाले का उपयोग कर मूल्य निकालता है getEmpId(),।

हम केवल संशोधित कक्षाओं को शामिल करके जार को रिबंड करने वाले हैं। के रूप में ReportGeneration.javaमैं में कोई परिवर्तन नहीं था केवल Employee.classजार फ़ाइल में शामिल था । मुझे ReportGeneration.classसमस्या को हल करने के लिए फाइल को जार में शामिल करना था ।


0

मुझे भी यही समस्या हुई है। यह तब भी होता है जब कक्षाओं में अस्पष्टता होती है। मेरा कार्यक्रम एक विधि को लागू करने की कोशिश कर रहा था जो एक ही स्थान / वर्ग पथ में मौजूद दो JAR फ़ाइलों में मौजूद थी। एक JAR फ़ाइल को हटाएँ या अपने कोड को निष्पादित करें जैसे कि केवल एक JAR फ़ाइल का उपयोग किया जाता है। जांचें कि आप एक ही JAR या एक ही JAR के विभिन्न संस्करणों का उपयोग नहीं कर रहे हैं जिनमें समान वर्ग है।

DISP_E_EXCEPTION [चरण] [] [Z-JAVA-105 जावा अपवाद java.lang.NoSuchMethodError (com.example.yourmethod)]


0

ज्यादातर बार java.lang.NoSuchMethodError को कंपाइलर पकड़ा जाता है लेकिन कभी-कभी यह रनटाइम के दौरान भी हो सकता है। यदि यह त्रुटि रनटाइम पर होती है, तो एकमात्र कारण वर्ग संरचना में बदलाव हो सकता है जिसने इसे असंगत बना दिया।

सर्वोत्तम व्याख्या: https://www.journaldev.com/14538/java-lang-nosuchmethodroor


0

मुझे यह त्रुटि आई है।

मेरी समस्या यह थी कि मैंने एक विधि के हस्ताक्षर को बदल दिया है, जैसे कुछ

void invest(Currency money){...}

में

void invest(Euro money){...}

इस विधि को इसी तरह के संदर्भ से लागू किया गया था

public static void main(String args[]) {
    Bank myBank = new Bank();

    Euro capital = new Euro();
    myBank.invest(capital);
}

संकलक चेतावनी / त्रुटियों के संबंध में चुप था, क्योंकि पूंजी मुद्रा और यूरो दोनों है।

समस्या इस तथ्य के कारण दिखाई दी कि मैंने केवल उस वर्ग को संकलित किया है जिसमें विधि को परिभाषित किया गया था - बैंक, लेकिन उस वर्ग से नहीं जिस विधि से बुलाया जा रहा है, जिसमें मुख्य () विधि शामिल है।

यह समस्या ऐसी चीज नहीं है जिसका आप अक्सर सामना कर सकते हैं, क्योंकि अक्सर परियोजना को केवल एक संशोधित वर्ग को संकलित करने के बजाय, मैन्युअल रूप से निर्मित किया जाता है या बिल्ड एक्शन स्वचालित रूप से चालू हो जाता है।

मेरा उपयोग यह था कि मैंने एक .jar फ़ाइल बनाई थी जिसका उपयोग एक हॉटफ़िक्स के रूप में किया जाना था, जिसमें App.class शामिल नहीं था क्योंकि यह संशोधित नहीं था। इससे मुझे समझ में नहीं आया कि मैं इसे शामिल न करूं क्योंकि मैंने शुरुआती तर्क के आधार वर्ग गर्त विरासत को रखा था।

बात यह है कि जब आप एक वर्ग को संकलित करते हैं, तो परिणामी बायटेकोड स्थिर है , दूसरे शब्दों में, यह एक कठिन संदर्भ है

मूल disassembled bytecode (javap टूल के साथ उत्पन्न) इस तरह दिखता है:

 #7 = Methodref          #2.#22         // Bank.invest:(LCurrency;)V

ClassLoader द्वारा नए संकलित Bank.class को लोड करने के बाद, उसे ऐसी कोई विधि नहीं मिलेगी, ऐसा प्रतीत होता है जैसे इसे हटा दिया गया था और नहीं बदला गया, इस प्रकार नामित त्रुटि।

उम्मीद है की यह मदद करेगा।


0

मेरे मामले में समस्या निर्माण पथ में एक ही पुस्तकालय के दो संस्करण होने की थी। लाइब्रेरी के पुराने संस्करण में फ़ंक्शन नहीं था, और नए ने किया था।


0

Intelij का उपयोग करते हुए मुझे अपने ग्रैडल प्रोजेक्ट के साथ एक समान समस्या थी। मैंने .gradle (नीचे स्क्रीनशॉट देखें) पैकेज को हटाकर और प्रोजेक्ट के पुनर्निर्माण के द्वारा इसे हल किया। .ग्रेडल पैकेज


0

NoSuchMethodError: मैंने इस मुद्दे को ठीक करने में कुछ घंटों का समय बिताया है, अंत में इसे सिर्फ पैकेज का नाम बदलने, साफ करने और बनाने के द्वारा निर्धारित किया गया है ... साफ निर्माण पहली कोशिश करें अगर यह वर्ग नाम या पैकेज नाम और स्वच्छ बिल्ड का नाम बदलने की कोशिश नहीं करता है .. .it तय होना चाहिए। सौभाग्य।


-2

यदि आपकी फ़ाइल का नाम वर्ग नाम से अलग है जिसमें मुख्य विधि है तो यह संभावना हो सकती है कि यह त्रुटि हो सकती है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.