कॉर्डोवा: आवश्यकताएं JDK 1.8 या अधिक से अधिक के लिए जाँच विफल रही


96

मैं विंडोज 7 ओएस में कॉर्डोवा 6.4.0 का उपयोग कर रहा हूं, लेकिन एंड्रॉइड वर्जन बनाने की कोशिश करने के बाद मुझे यह त्रुटि मिलती है:

मुदे का विवरण

जावा होम वैरिएबल को JDK पथ पर सही ढंग से बसाया गया है, लेकिन मुझे नहीं पता कि मुझे यह मुद्दा क्यों मिल रहा है। कोई सुझाव कृपया?


3
ठीक। मेरे पास एक ही मुद्दा था, लेकिन मैं 1.8 संस्करण को डाउनलोड नहीं कर सका क्योंकि यह अन्य नाम के तहत छिपा हुआ है। इसका 8u152 है। कुछ घंटों के बाद मैंने इसे यहाँ पाया: oracle.com/technetwork/java/javase/downloads/…
user2367101

जवाबों:


61

सभी पिछले JDK को अनइंस्टॉल करें जिसमें 1.8 Install JDK 1.8 शामिल है


3
आप @Urbycoz बस जाने की जरूरत Add or Remove Programs/Program Featuresमें Windows OS। अगला, किसी भी पिछले जावा संस्करण को हटा दें। मैंने version 7भी uninstallingइसे स्थापित किया था और इसके बाद , cordova run androidकाम किया। शुभ लाभ।
आकाश

1
लेकिन इसका मतलब क्या है? यदि अलग-अलग JDK स्थापित हैं, तो कॉर्डोवा JDK का चयन कैसे करती है। यह संभव नहीं हो सकता है कि आपके पास केवल एक JDK (जैसे निर्माण मशीन) हो सकता है?
ब्रूनो रैनशर्ट

आप अभी भी बहुत Cordova पथ अपने JDK को पा सकते हैं envionment चर निर्धारित करने की आवश्यकता superuser.com/questions/949560/...
युवान Aburrow

20
@MadNeox दूसरे संस्करण को अनइंस्टॉल करना सिर्फ एक समाधान है समाधान नहीं
गांधी

मेरे लिए चाल चली। appwiz.cpl में गया (विंडोज़ cmd से) और java 7 और java sdk को हटा दिया। 7.
Ortiz

53

लिनक्स (डेबियन / उबंटू) में जावा 1.8 एसडीके का चयन करके इसे हल किया जा सकता है

sudo update-alternatives --config javac

JAVA_HOMEEnv variable को सीधे बदलने से कोई प्रभाव नहीं पड़ता है।

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


1
आपने मेरा दिन बना दिया। मैंने पिछले कुछ दिनों में सब कुछ करने की कोशिश की। Tnx बहुत। लेकिन केवल यही काम क्यों करता है? क्यों परिवर्तनशील चर का कोई प्रभाव नहीं है?
मेरी-

2
मेरे लिए उबंटू पर भी काम किया ... मैंने इसके लिए काम किया था javaलेकिन नहीं javac! अब जावा 9 की स्थापना रद्द करने की कोई आवश्यकता नहीं है :)
ह्यूजजदेवी

वही टिप्पणी यहाँ। हालाँकि JAVA_HOMEयह सही 1.8 JDK की ओर इशारा कर रहा था, केवल सिस्टम डिफॉल्ट संतुष्ट कॉर्डोवा को अपडेट कर रहा था।
मयोन

1
जब सुडो अपडेट-विकल्प करते हैं --config javac लिंक ग्रुप javac में केवल एक ही विकल्प होता है (उपलब्ध / usr / bin / javac): / usr / lib / jvm / java-11-openjjk-amd64 / bin / javac कॉन्फ़िगर करने के लिए कुछ भी नहीं । मैं जावा-8 के लिए वापस जाने की जरूरत है-Openjdk वहाँ यह करने के लिए दूर है?
तैएब

Ubuntu में इसका समाधान क्यों है। जैसे myoan ने कहा, सिस्टम डिफॉल्ट संतुष्ट कॉर्डोवा को अपडेट क्यों कर रहा है?
जितिन

40

आपको sdk के किसी भी उच्च संस्करण की स्थापना रद्द करने की आवश्यकता नहीं है। बस jdk1.8.0_161 स्थापित करें या अगर यह पहले से ही स्थापित नहीं है।

अब बस JAVA_HOMEUSER वैरिएबल (सिस्टम वेरिएबल नहीं) सेट करें जैसा कि नीचे दी गई इमेज में दिखाया गया है।

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

इस तरह आपको उच्च संस्करण की स्थापना रद्द करने की आवश्यकता नहीं है और समस्या हल हो जाएगी।


9
अपने आदेशों को फिर से चलाने की कोशिश करने से पहले टर्मिनल / आईडीई को बंद करना याद रखें।
डैनियल

1
या आप सिर्फ $ चला सकते हैं। ~ / .bashrc फिर से एनवी चर निर्यात करने के लिए
निक क्यूवास

34

Jdk 9 को अनइंस्टॉल करने और jkd 8.x को पुनर्स्थापित करने के लिए क्या काम किया गया

स्थापना रद्द करने के लिए Mac पर टर्मिनल पर जाएं और इस चरणों का पालन करें:

cd /Library/Java/JavaVirtualMachines

sudo rm -rf jdk-9.0.1.jdk

फिर Oracle से .dmg पैकेज डाउनलोड करके jdk 8.x स्थापित करें।



23

आपके पास एक संस्करण हो सकता है जो 8 से अधिक है लेकिन कॉर्डोवा केवल JDK 1.8 का समर्थन करता है। इस लिंक को देखें Cordova Documentation

मैंने उस कोड के टुकड़े पर एक नज़र डाली जो वास्तव में आपके जावा के संस्करण संख्या की जांच करता है। : निम्नलिखित देखो module.exports.check_java में प्लेटफार्मों / एंड्रॉयड / कॉर्डोबा / lib / check_reqs.js । ऑन लाइन 220. आपको टीम द्वारा छोड़ा गया एक रेक्स और टिप्पणी दिखाई देगी कि भविष्य में जावा 10 का समर्थन किया जाएगा।

मौजूदा नियमित अभिव्यक्ति तब विफल हो जाएगी जब इसे जावा के नवीनतम संस्करणों जैसे जावा 10 के खिलाफ चलाया जाता है। ऐसा इसलिए है क्योंकि जावा 8 या 9 को निम्न प्रारूप में सहेजा गया है: 1. [8-9]। ** लेकिन जावा 10 को बचा लिया गया है। 10 के रूप में। ** और नियमित रूप से प्रारूप 1 में एक संस्करण की तलाश है। [8-9]। **

// Let's check for at least Java 8, and keep it future proof so we can support Java 10
var match = /javac ((?:1\.)(?:[8-9]\.)(?:\d+))|((?:1\.)(?:[1-9]\d+\.)(?:\d+))/i.exec(output);

मेरा समाधान:

आपको JRE या JDK के अपने वर्तमान संस्करण की स्थापना रद्द करने की आवश्यकता नहीं है क्योंकि इंस्टॉलर प्रत्येक संस्करण को एक विशिष्ट फ़ोल्डर में स्थापित करता है।

1- संस्करण स्थापित करें जावा 8 इस लिंक का पालन करें

2- अपने पर्यावरण चर अद्यतन करें:

  • JAVA_HOME यदि आपने JDK स्थापित किया है
  • JRE_HOME यदि आपने JRE स्थापित किया है

उन्हें उस स्थान पर इंगित करके जहां JRE 8 और JDK 8 स्थापित किए गए थे।

// On my machine   
C:\Program Files\Java\jdk1.8.0_171 // JAVA_HOME
C:\Program Files\Java\jre1.8.0_171 // JRE_HOME

एक नया टर्मिनल सत्र खोलें और उस कमांड को चलाएं जो विफल हो रहा था। यह अब काम करना चाहिए।

काम नहीं किया?

क्या यह अन्य कारणों से संभव नहीं है, संभव डिबगिंग प्रक्रिया:

  • सुनिश्चित करें कि JAVA_HOME और JRE_HOME चर सिस्टम चर हैं।
  • सुनिश्चित करें कि वे आपके उपयोगकर्ता के पथ में जोड़े गए पथ में जोड़े गए हैं

मेरे लिए यही एकमात्र सही उत्तर था। अधिक जानकारी के लिए इस लिंक को देखें evothings.com/doc/build/cordova-install-linux.html
Dara Java

17

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

पुराने संस्करण JDK पथ को 'path'पर्यावरण चर' से हटाकर मेरे लिए चाल चली। आशा है कि यह किसी को भी मदद करता है।


यदि आप वातावरण चर सेट कर रहे हैं, तो आप इस उपयोगी लग सकते superuser.com/questions/949560/...
युवान Aburrow

हां, मैं इसके साथ बिल्ड कमांड को चलाने में सक्षम हूं, लेकिन फिर भी रन कमांड 'आयनिक कॉर्डोवा रन एंड्रॉइड' के साथ संघर्ष कर रहा है, त्रुटि दिखाते हुए अद्यतन किए गए अद्यतन INCOMPATIBLE।
सुप्रिया चौहान

@supriyachauhan आप पूरे सामान को फिर से स्थापित करने की कोशिश कर सकते हैं। और आपको समस्या को कम करने के लिए विस्तृत विवरण प्रदान करना पड़ सकता है
गांधी

9

मैंने यह सूचित किया कि मेरा पथ पर्यावरण चर java 1.7 की ओर इशारा कर रहा था जबकि JAVA_HOME 1.8 की ओर इशारा कर रहा था, इसलिए मैंने पथ चर को 1.8 में संपादित किया और मैं ठीक था।


8

मेरे मामले में JAVA_HOME C: \ Program Files (x86) \ Java \ jdk1.0.0.055 की ओर इशारा कर रहा था

जब मैंने लिखा कि java in cmd ने इसे C: \ Program Files (x86) \ Java \ jdk1.7.0_55 के साथ java.exe पथ के साथ कैसे आउटपुट किया, तो मैंने JAVA_HOME चर को पर्यावरण चर से C / Program Files \ Java में बदल दिया है \ jdk1.8.0_20 और यह काम किया है, तो ऐसा लगता है कि मैं 2 jdk उदाहरणों और कॉर्डोबा v1.8 था। * एक।


जाँच करें कि आपका पथ चर कहाँ इंगित कर रहा है। मेरे पास JAVA_HOME 1.8 की ओर इशारा था, लेकिन Path में यह एक अलग संस्करण की ओर इशारा कर रहा था। ठीक काम करने के बाद मैंने दोनों को जोड़ दिया!
आह

6

MAC: नेविगेट करने के लिए: / लाइब्रेरी / जावा / JavaVirtualMachines सुनिश्चित करें कि आप केवल jdk1.8.0_201.jdk कर रहे हैं। यदि आपके पास कई हैं तो अन्य JDK निकालें


5

मैं @ हॉजिंगटन से सहमत हूं। यह जावा संस्करण का पता लगाने के कॉर्डोवा कोड पर बग होना चाहिए। मैंने क्या किया है:

  1. जेडीके 10 रखें
  2. JDK 8 स्थापित करें
  3. बदले JAVA_HOMEJDK 8 के रास्ते पर है, और बदलने के pathसाथ ही चर।
  4. "cmd" को पुनरारंभ करें और cordova buildफिर से चलाएँ ।

और त्रुटि गायब हो गई!


5

कई जावा संस्करणों के साथ मैकओएस उत्तर स्थापित और अनइंस्टॉल करने की आवश्यकता नहीं है

मुझे दिखाएं कि मैंने जावा के कौन से संस्करण स्थापित किए हैं:

$ ls -l /Library/Java/JavaVirtualMachines/

इसे मेरे jdk1.8 संस्करण में सेट करने के लिए:

$ ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac /usr/local/bin/javac

इसे मेरे jdk11 संस्करण में सेट करने के लिए:

$ ln -s /Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac /usr/local/bin/javac

-------------------------------------------------- -----------------------

ध्यान दें कि संदेश क्या कहता है, इसके बावजूद, यह प्रतीत होता है कि इसका मतलब है कि यह संस्करण 1.8 चाहता है, और यदि आपके पास बाद का संस्करण है, तो इस संदेश को फेंकता है ।

इस प्रकार मेरे पहले प्रयास हैं जो मुझे उपरोक्त उत्तर तक ले जाते हैं, जो तब काम करता था ... आपको जो कुछ स्थापित किया गया है उसके आधार पर कुछ अलग करने की आवश्यकता हो सकती है, इसलिए शायद ये नोट मदद कर सकते हैं:


इसे मेरे jdk1.8 संस्करण पर सेट करें

$ export PATH=/Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac:$PATH

इसे मेरे jdk11 संस्करण में सेट करें

$ export PATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac:$PATH

... लेकिन वास्तव में वह काम नहीं करता है क्योंकि /usr/bin/javacअभी भी वही है जो पहले चलता है:

$ which javac
/usr/bin/javac

... यह देखने के लिए कि पहले रास्ते पर क्या चलता है:

$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

इसका मतलब है कि मैं ओवरराइड कर सकता हूं /usr/bin/javac... उत्तर के शीर्ष पर स्थित कमांड देखें ...
इसे lnइस उत्तर के शीर्ष पर, jdk1.8 का उपयोग करने के लिए सेट करने के लिए कमांड , मेरे लिए काम किया है।


4

यदि आपके पास JDK के कई संस्करण हैं, तो आप चला सकते हैं

export JAVA_HOME="/usr/local/env/java/jdk1.8.0_131.jdk/Contents/Home/"

कॉर्डोवा बनाने से पहले, jdk के एक विशिष्ट संस्करण का उपयोग करने के लिए :)


3

विंडोज़ पर मिश्रण को सही तरीके से प्राप्त करने के लिए , आपको निम्न कार्य करने की आवश्यकता है

  1. JDK 1.8 या उच्चतर के किसी भी संस्करण को डाउनलोड और इंस्टॉल करें ।
  2. पर्यावरण चर खोलें, JAVA_HOME नामक एक पर्यावरण चर बनाएं और JDK इंस्टॉल पथ पर मान सेट करें। C:\Program Files\Java\jdk1.8.0_162 सुनिश्चित करें कि आप \binमूल्य में नहीं जोड़ते हैं ।

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

  1. अपने सिस्टम पथ चर में, एक अर्ध-बृहदान्त्र डालें ;और इस मान को सिस्टम पथ में जोड़ें जैसे कि C:\Program Files\Java\jdk1.8.0_162\bin;यहाँ \binजोड़ा गया है।

नोट: पर्यावरण चर मुश्किल हैं। उन्हें माना जाता है कि वे बंद होने वाले हैं ; दूसरा खोलने से पहले। यही कारण है कि हम मूल्य को जोड़ने से पहले एक डालते हैं और एक मूल्य के बाद इसे बंद करते हैं।

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

  1. अब टर्मिनल बंद करें और फिर से खोलें फिर पिछले कमांड चलाएं।

JAVA_HOME, PATH से जावा को संबोधित करने का एक मिश्रण है। कॉर्डोवा पाथ का उपयोग कर रहा है जो संभवतः java12 / 13 को इंगित करता है
bortunac

3

कभी-कभी रास्ता बदलकर और java-home काम नहीं करता। आपको जोड़ने की आवश्यकता है

C:\Users\[your user]\AppData\Local\Android\Sdk\platform-tools
C:\Users\[your user]\AppData\Local\Android\Sdk\tools

पर्यावरण चर पथ के रूप में अच्छी तरह से।


3

Cordova : Requirements check failed for JDK 1.8 or greaterजब मैं कमांड चलाता हूं तो आज मुझे अपने मैक ओएस में भी यह त्रुटि आईionic cordova build --release android टर्मिनल के माध्यम से ।

नीचे कमांड मेरे मुद्दे को हल: -

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home"

आशा है कि यह भविष्य में किसी की मदद करेगा!


2

यह त्रुटि संदेश उपयोगकर्ता को भ्रमित करता है, नीचे दी गई सफलता स्क्रीन।cordova सफलता का निर्माण

त्रुटि संदेश उपयोगकर्ता को JAVA_HOME कॉन्फ़िग के साथ बिल्ड विफल को ठीक करने का प्रयास करता है। लेकिन असली समस्या सिर्फ JAVA_HOME में नहीं है।

मैं "सिस्टम चर" में JAVA_HOME और पथ में सही कॉन्फ़िगरेशन के साथ इस समस्या को ठीक करता हूं। यहां छवि विवरण दर्ज करें

आशा है कि समस्या को ठीक करने में मदद मिल सकती है, लेकिन जेडीके को फिर से स्थापित न करें।


2

मैडनेक्स द्वारा पोस्ट किया गया उत्तर सही है। मैं इसी तरह के एक मुद्दे का सामना कर रहा था जिसे मैंने jdk 9 स्थापित किया था और साथ ही 1.8 संस्करण भी

मैंने पहली बार jdk 9 को रखने की कोशिश की और १. tried को हटाकर यह एक एरर रिक्वायरमेंट्स चेक फेल दिखा

तब मैंने jdk9 को अनइंस्टॉल करके और रीइनस्टॉल करके 1. कोशिश की थी। इस बार यह javac-version चलाने में असफल दिखाई दे रही थी

कुछ समय के लिए पर्यावरण चर के साथ खेलने के बाद आखिरकार मुझे समाधान मिल गया

इस बिंदु पर मेरे सिस्टम में केवल jdk 1.8 कॉर्डोवा संस्करण है: 7.1.0

-Open एनवायरनमेंट वेरिएबल्स टैब -उंडर यूजर वैरिएबल एक नया वैरिएबल PATH बनाते हैं-इसे निम्न मान दें: \ Program Files \ Java \ jdk1.8.0_151 \ bin (जहाँ आप अपना jdk इंस्टॉल किया है, उसके आधार पर बदल सकते हैं)

यह आपकी समस्या को हल करना चाहिए आशा है कि यह मदद करता है

हालाँकि जवाब पहले ही दिया जा चुका था लेकिन मुझे यह पता लगाने में कुछ समय लगा कि मैं कहाँ गलत हो रहा था इसलिए इस उम्मीद को पोस्ट करने का फैसला किया कि इससे और समय बच जाएगा


1

बस सुनिश्चित करें कि समान JDK संस्करण (यानी इस मामले में 1.8) PATHपर्यावरण चर और से सुलभ हैं JAVA_HOME। उदाहरण: यदि JAVA_HOME=C:\Program Files\Java\jdk1.8.0_152तब PATHचर भी पथ के ऊपर और महत्वपूर्ण बात यह किसी भी पहले शामिल करना चाहिए अगर JDK / JRE पहले से ही में उल्लेख के अन्य पथ (यदि कोई हो) PATHचर। यदि कोई अन्य एप्लिकेशन जावा के विभिन्न संस्करण का उपयोग कर रहा है, तो आप अन्य संस्करणों की स्थापना रद्द कर सकते हैं।


1

यदि आपके पास jdk8 और jdk9 दोनों स्थापित हैं, तो आपको विच संस्करण की जांच करनी होगी

पथ में और जहाँ JAVA_HOME इंगित कर रहा है।

आपके द्वारा पोस्ट किए गए लॉग में, मैं देखता हूं कि JAVA_HOME JDK9 की ओर अग्रसर है।

JDK8 को लक्षित करने के लिए अपने globel JAVA_HOME env var को संशोधित करें या कॉर्डोवा CLI का उपयोग करने से पहले आप JAVA_HOME को पावरशेल में बदल सकते हैं यदि आप केवल कॉर्डोवा के लिए jdk8 का उपयोग करना चाहते हैं:

$env:JAVA_HOME="C:\Program Files\Java\jdk1.8.0_151"

**cordova build android**

1

यदि आपके पास कई जावा संस्करण स्थापित हैं और उन्हें रखने की आवश्यकता है, तो आपको निम्नलिखित चीजों की जांच करने की आवश्यकता है:

  • JAVA_HOME आपके jdk1.8 की ओर इशारा करता है
  • अपने पथ चर में की जांच करनी है कि jdk1.8 \ बिन पथ है से पहले अन्य JDK \ बिन पथ

1

मुझे jdk1.8.0_201 के साथ एक ही समस्या का सामना करना पड़ा। जब मैंने JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_201 बनाया और "C: \ Program Files \ Java \ jkk1.8.0_201_ bin" में हल हो गया। पथ चर


1

मेरे पास (ओपन) JDK 8 और 11 विंडोज 10 पर स्थापित है और मुझे भी यही समस्या थी। मेरे लिए निम्नलिखित काम किया:

  1. JDK 8 को इंगित करने के लिए JAVA_HOME सेट करें। (पहले कई उत्तरों में उल्लेख किया गया है।) और
  2. PATH से निकालें (!) JDK 11 जैसा कि यह निकला कि - हालांकि JDK 8 को इंगित करने वाले JAVA_HOME पथ को प्रदर्शित करते हुए - कॉर्डोवा ने वास्तव में JDK 11 को एक्सेस किया था जो PATH में शामिल था, जिसने जावा संस्करण की जांच को विफल कर दिया था।

1

यह एक पुराना प्रश्न है, लेकिन चूंकि मुझे सिर्फ वही समस्या थी, लेकिन त्रुटि का एक अन्य स्रोत था, यहां एक छोटा जवाब।

Windows (केवल) और Webstorm IDE 2019.2 के साथ समस्या उत्पन्न हुई

संस्करण 2019.2 में वेबस्टॉर्म का एक मुद्दा था, क्योंकि यह आंतरिक रूप से (जावा (ओएस से) लक्षित जावा jdk के बजाय% JAVA_HOME% चर के लिए खुले jdk का उपयोग करता था।

मेरे मामले में (हाँ, यह पुराना है, यह एक पुराना कॉर्डोवा प्रोजेक्ट है ...)

java -versionWindows cmd.exe में निष्पादित हो रहा है:

$ java -version
java version "1.8.0_221"

लेकिन java -versionवेबस्टॉर्म टर्मिनल में निष्पादन :

$ java -version
openjdk version "11.0.3" 2019-04-16
// more output

बाद में (आज), संस्करण 2019.2.1 को जारी किए गए पैच के साथ एक फिक्स आया। अब Webstorm os% JAVA_HOME% चर का उपयोग करता है जैसा कि इसे करना चाहिए और java -versionआउटपुट दोनों मामलों में समान है।

आशा है कि यह किसी की मदद करता है!


1

त्रुटि तब होती है जब जावा के लिए डिफ़ॉल्ट पथ जावा 8 या JDK 1.8 के अलावा किसी संस्करण में सेट किया जाता है। *

मेरे मामले के लिए, मैंने जावा 8 स्थापित करने के बाद जावा 11 स्थापित किया है

आप दौड़ कर परीक्षण कर सकते हैं:

java -version

मेरे मामले के लिए यह वापस आ गया:

java version "11.0.8" 2020-07-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.8+10-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.8+10-LTS, mixed mode)

इसे ठीक करने के लिए, हमें जावा 8 बायनेरिज़ के बजाय जावा पथ को इंगित करने की आवश्यकता है

मान लें कि आपके पास पहले से जावा 8 या JDK 1.8 है। * स्थापित:

  1. सुनिश्चित करें कि JAVA_HOME और JRE_HOME सेट है (सुनिश्चित करें कि यह Java 1.8 की ओर इंगित करता है। *)

चर

  1. पथ के अंदर, सुनिश्चित करें %JAVA_HOME%\binया C:\Program Files\Java\jdk1.8.0_251\binजोड़ा गया है

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

  1. समस्या का स्रोत: मेरे JDK 11 संस्थापन ने शीर्ष पर दो PATH प्रविष्टियाँ जोड़ीं, पूर्वता लेते हुए या %JAVA_HOME%\binJDK 1.8 को इंगित करने वाले PATH को ओवरराइड करते हुए । *

यदि आपके पास उनके पास नहीं है, तो उन्हें न जोड़ें, अन्य पाथ प्रविष्टियों को ढूंढें जो ओवरराइड कर सकते हैं %JAVA_HOME%\bin

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

  1. ओवरराइडिंग प्रविष्टियों के लिए "नीचे नीचे" पर क्लिक करें, जब तक कि वे नीचे न हों %JAVA_HOME%\bin

%JAVA_HOME%\bin PATH जो कि Java 8 की ओर इशारा करती है, अब JATK 11 की ओर इशारा करने वाली अन्य PATH प्रविष्टियों पर प्राथमिकता दी जाएगी

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

  1. सहेजें, और एक नया टर्मिनल खोलें और चलाएं
java -version

मेरे मामले के लिए यह फिर लौट आया:

java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

फिक्स्ड!


0
  1. कंट्रोल पैनल होम पर जाएं
  2. उन्नत सिस्टम सेटिंग्स
  3. पर्यावरण चर
  4. JAVA_HOME चुनें
  5. संपादित करें
  6. 1.8 एक के लिए चर मूल्य

0

ऐसा लगता है कि एंड्रॉइड एसडीके जावा 9 का समर्थन नहीं करता है। 8 से डाउनग्रेड करें यदि आप जेडडीके 1.8 पर वापस नहीं जाना चाहते हैं जो मेरे लिए हास्यास्पद है। JDK 8 मेरे लिए काम करता है लेकिन अपने JDK इंस्टॉलेशन के स्थान पर JAVA_HOME पर्यावरण चर को सही ढंग से सेट करना सुनिश्चित करें।


0

आधिकारिक कॉर्डोवा प्रलेखन के अनुसार, यह केवल JDK 1.8 का समर्थन करता है जो तारीख (अप्रैल 2018) तक अधिक नहीं है । या कॉर्डोवा के भीतर संस्करण पहचान स्क्रिप्ट के साथ समस्या हो सकती है।

कॉर्डोवा: आवश्यकताओं को स्थापित करना


0

मैंने अभी पुराने JDK फ़ोल्डर का नाम बदला है _, अगर मुझे आगे भी इसकी आवश्यकता है, और यह काम करता है।

C:\Program Files (x86)\Java\_jdk1.7.0_40 
C:\Program Files (x86)\Java\_jre7

मेरी मशीन पर जावा और जेवैक का विन्यास असंगत था: जावा ने JDK 9 की ओर इशारा किया, जबकि javac ने JDK 8 की ओर इशारा किया। दोनों को JDK 8 में सेट करने से समस्या ठीक हो गई।
ominug

0

मैं खिड़कियों का उपयोग कर रहा हूं और दो jdk 1.8 और 14 संस्करण कुछ कर रहा हूं ...

एक ही समस्या का सामना करना पड़ा और कुछ डिबगिंग के बाद समाधान मिल गया।

  1. JAVA_HOME सही से सेट करें।
  2. नए jdk (1.8) संस्करण के साथ उपयोगकर्ता चर पथ मूल्य बदलें।
  3. नए jdk (1.8) संस्करण के साथ उपयोगकर्ता चर पथ मूल्य बदलें।

और यह हल हो गया


0

Ubuntu / डेबियन लिनक्स इस उत्तर के संस्करण 8 openjdk स्थापित करने और के माध्यम से डिफ़ॉल्ट सेट करने के लिए हैupdate-alternatives


# install (open)jdk 8
sudo apt-get install -y openjdk-8-jdk

# update java compiler and set to 1.8
update-alternatives --config javac

# update java runtime (optional)
update-alternatives --config java

# Also set $JAVA_HOME and $PATH to your .bashrc (optional)
echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc
echo 'export PATH="$PATH:$JAVA_HOME/bin' >> ~/.bashrc

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