Android N को IDE की आवश्यकता जावा 1.8 या बाद के संस्करण के साथ चल रही है?


117

मेरा XMLलेआउट इस त्रुटि संदेश के साथ नहीं दे रहा है। मैं पहले से ही जावा 8 का उपयोग कर रहा हूं।

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

ग्रेडेल में नवीनतम बिल्ड टूल्स का उपयोग करना।

android {
    compileSdkVersion 'android-N'
    buildToolsVersion 24.0.0 rc1
    ...
}

XML त्रुटि -

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


2
एंड्रॉइड स्टूडियो के साथ सभी प्रकार की समस्याओं को प्रस्तुत करना है। मेरा सुझाव है कि आप एक न्यूनतम प्रजनन योग्य उदाहरण प्रदान करें । इस स्थिति में, इसमें लेआउट फ़ाइल और विशिष्ट त्रुटि शामिल होगी।
कॉमंसवेयर

@CommonsWare मैंने XML त्रुटि छवि को अपडेट किया। एक समर्थित JDK स्थापित करें जिसने मुझे पहले से किए गए चरणों को स्थापित करने के लिए पुनर्निर्देशित किया।
मज्जा २०'१६

1
मुझे buildToolsVersion '24 .0.0 rc1 'में बदलना पड़ा, दस्तावेज़ीकरण उद्धरण याद आ रहा था।
Phyrum Tea

@PhyrumTea ने त्रुटि दूर नहीं की।
मज्जोश

1
अंत में, जब मैंने प्रोजेक्ट बनाने और चलाने का प्रयास किया, तो यह असफल रहा Directory cannot have its readable permission cleared for everybody। जाहिरा तौर पर यह एक ज्ञात बग है और Google इस पर काम कर रहा है।
मज्जोश

जवाबों:


187

मुझे वही त्रुटि मिली जिसका आप वर्णन करते हैं, लेकिन OS X पर। मुझे पता है कि यह आपकी समस्या का समाधान नहीं कर सकता है (क्योंकि मैं विंडोज के लिए समकक्ष नहीं जानता), लेकिन चूंकि यह ओएस विशिष्ट नहीं है इसलिए मैं किसी भी ओएस एक्स साथी के लिए समाधान छोड़ रहा हूं। वहाँ से बाहर। फ़ाइल को संपादित करें /Applications/Android\ Studio.app/Contents/Info.plist, और 1.6 संस्करण (मेरे मामले में) को हटा दें, आप 1.6+, 1.7+ या 1.8, जो भी आप चाहें पसंद कर सकते हैं। मेरा इस तरह अंत हो गया

...
<key>JVMVersion</key>
<string>1.7+</string>
...

ध्यान रखें कि जावा संस्करण 1.8_60 से 1.8_75 ( IDEA-146691 ) के साथ ड्रैग एंड ड्रॉप के साथ एक असंगति है, जिसे IDE सफलतापूर्वक रिपोर्ट करने के बाद संस्करण को बदल देगा।

गैर टर्मिनल उपयोगकर्ताओं के लिए

  1. अपनी Android Studio.appफ़ाइल खोजें । यदि यह गोदी में है तो आप इसे राइट क्लिक करके चुन सकते हैं Options > Show in Finder
  2. इसे राइट क्लिक करें और चुनें Show package content
  3. उल्लिखित फ़ाइल ( Contents/Info.plist) पर नेविगेट करें ।
  4. अपने पसंदीदा पाठ संपादक के साथ फाइल को संपादित करें।

11
यह वर्चुअल मशीन को बदल देगा जहां एंड्रॉइड स्टूडियो चलता है। मेरे OSX में, मूल मूल्य था: <key> JVMVersion </ key> <string> 1.6 *, 1.7 +, 1.8 </ string> और नया मूल्य है: <key> JVMVersion </ key> <string> 1.8 </ string>
सैंथियागो

8
यह काम करता हैं! इस समाधान के लिए धन्यवाद। सवाल यह है कि क्यों Google चाहता है कि उसके डेवलपर्स ने इस मुद्दे पर अपना समय बर्बाद किया?
कोटिक_ओ

3
Google के प्रलेखन की कमी को हल करने के लिए धन्यवाद :)। मुझे आश्चर्य है कि यह निर्देश यहां क्यों नहीं है: developer.android.com/intl/pt-br/preview/setup-sdk.html#java8 (यह एंड्रॉइड स्टूडियो में प्रदर्शित लिंक है)।
Totalys

7
बहुत अच्छा काम करता है!! अफसोस की बात है, जब एंड्रॉइड स्टूडियो को अपडेट करना (जो मैंने अभी नवीनतम संस्करण में किया था), तो यह Info.plist फ़ाइल को रीसेट करता है इसलिए मुझे अपने JVMVersion को बदलने के लिए फिर से चरणों को दोहराना होगा: <key>JVMVersion</key> <string>1.8</string>इतना कष्टप्रद एंड्रॉइड स्टूडियो!
माइक्रो

3
Android Studio 2.2 <string> 1.8 *, 1.8 + </ string> का उपयोग करता है।
jmnwong

147

पूर्वावलोकन विंडो में एंड्रॉइड आइकन के बगल में अक्षर एन पर क्लिक करें और एपीआई स्तर 23 या उससे कम का चयन करें। इसे हल करना चाहिए।

Rpeview विंडो में आइकन की पहली पंक्ति


25
लेकिन मैं में नहीं एपीआई 23. एन में पूर्वावलोकन करना चाहते
mjosh

3
मैंने अपने मैक पर उसी मुद्दे का अनुभव किया। 24 से 23 तक एपीआई स्तर को कम करना मेरे लिए काम कर गया।
सलमान

3
जवाब नहीं, कृपया सही के रूप में चिह्नित उत्तर का पालन करें
Pavneet_Singh

यह कोई उत्तर नहीं है। यह सिर्फ समस्या के माहौल की अनदेखी है।
enadun

अच्छी तरह से किया। हां, इससे मेरी समस्या हल हो गई। धन्यवाद। :)
arango_86

63

सेट JDK_HOMEऔर JAVA_HOMEपर्यावरण चर, मेरे मामले में C:\Program Files\Java\jdk1.8.0_60

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

में जावा संस्करण की जाँच करें Help > About। यह आपके द्वारा निर्धारित JRE संस्करण को दिखाना चाहिए।

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

यह वह है, अब आप अपने लेआउट का पूर्वावलोकन कर सकते हैं N


1
मैंने वही किया जो आपने कहा था, लेकिन जब मैं मदद करता हूं-> इसके बारे में अभी भी मेरे पुराने jdk की ओर इशारा करता है। ऐसा क्यों है?
the_Martian

1
मेरे पास JRE: 1.8 (लगभग) है। हालाँकि मैं v24 को लक्षित करने वाले ऐप्स का निर्माण नहीं कर सकता। > compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.
जैपनोग्लिका

1
@The_Martian आपको अपने कंप्यूटर को पुनरारंभ करने की आवश्यकता है।
निचोड़ें

1
मैक ओएस पर मैं अपने पुराने jdk संस्करण को हटा देता हूं। उसके बाद, एंड्रॉइड स्टूडियो अंतिम संस्करण
lopez.mikhael

1
@ लोपेज़माइकल जो वास्तव में केवल एक चीज है जो अंत में मेरे लिए काम करती है। मैंने हर संभव सेटिंग को बदल दिया, जो मुझे मिल सकता है, ठीक उसी तरह से सब कुछ कॉन्फ़िगर किया गया था जो मुझे चाहिए था, त्रुटि प्राप्त करता रहा। अंत में, मैंने पुराने jdk निर्देशिकाओं को JavaVirtualMachion फ़ोल्डर में old_jdks नाम के एक उपनिर्देशिका में स्थानांतरित कर दिया। सब कुछ अब महान काम करता है।
zgc7009

27

इस समस्या वाले मैक उपयोगकर्ताओं के लिए (मैं ओएस एक्स 10.11.5 और एंड्रॉइड स्टूडियो 2.1.2 चला रहा हूं), यहां बताया गया है कि आप इसे कैसे हल कर सकते हैं:

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

सबसे पहले, सुनिश्चित करें कि आपके पास JDK 8 स्थापित है

फिर निम्नलिखित कमांड चलाएँ:

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk
$ open /Applications/Android\ Studio.app/

आपको एक अलग संस्करण 91में बदलने की आवश्यकता हो सकती है jdk1.8.0_91.jdk। आप देख सकते हैं कि आपके पास कौन से JDK संस्करण हैं:

$ ls /Library/Java/JavaVirtualMachines/

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

और जानकारी

संपादित करें: और यदि आप वास्तव में इसे टर्मिनल से खोलना नहीं चाहते हैं:

  1. सामग्री के साथ एक AppleScript बनाएँ: do shell script "export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk; open /Applications/Android\\ Studio.app/"
  2. फ़ाइल> फ़ाइल फ़ॉर्मेट चुनें एप्लिकेशन को सहेजें । इसे कहीं बचा लो।
  3. यदि आप आइकन बदलना चाहते हैं, तो यहां देखें।
  4. अगर आपको पसंद है तो ऐप को अपने लॉन्चपैड पर खींचें।

जब मुझे मिलने वाली स्क्रिप्ट को चलाने की कोशिश की जाती है: error "sh: /usr/local/bin/studio: No such file or directory" number 127इसे ठीक करने का कोई तरीका? जब मैं इसे टर्मिनल से चलाता हूं तो यह पूरी तरह से काम करता है
डेनियल

@Daniele क्षमा करें, मैं भूल गया कि मैंने इसके लिए एक और शेल स्क्रिप्ट बनाई है। AppleScript में ऊपर जैसी कमांड्स होनी चाहिए। देखिये मेरा अपडेटेड जवाब।
वॉम्बो

5

मैं उसी मुद्दे पर मिला था।

मैंने jdk1.6, jdk1.7, jdk1.8 स्थापित किया, और स्टूडियो को तैनात किया जैसा आपने किया था।

मेरा समाधान jdk1.6 और jdk1.7 की स्थापना रद्द कर रहा है, केवल jdk1.8 छोड़ें

sudo rm -rf ${path to jdk1.6}
sudo rm -rf ${path to jdk1.7}

बस इतना ही।


यह करने के लिए सुरक्षित है
माइक्रो

@MicroR यदि आप अन्य सॉफ्टवेअर jdk1.6 और jdk1.7 पर निर्भर नहीं हैं, तो मुझे लगता है कि यह सुरक्षित है।
युवावस्था

इस समाधान ने मेरे लिए समस्या तय कर दी। अनइंस्टॉल करने का यह तरीका सुरक्षित है और यह Oracle ( docs.oracle.com/javase/8/docs/technotes/guides/install/… ) द्वारा सुझाया गया है
Showpath

2

मैं Ubuntu 14.04 का उपयोग कर रहा हूं और मुझे एक समान त्रुटि का सामना करना पड़ रहा है, इस अंतर के साथ कि मेरे पास NDK नहीं है। मेरा समाधान प्रोजेक्ट परिभाषा में जावा 8 को स्थापित करने के बाद, एंड्रॉइड स्टूडियो को रीबूट करने के लिए था, अब और नहीं।

सिस्टम जावा संस्करण की जांच करें, कंसोल में "जावा-वर्जन", आउटपुट को कुछ इस तरह कहना चाहिए

java version "1.8.0_91"

मैंने JAVA_HOME = "/ लाइब्रेरी / Java / JavaVirtualMachines / jdk1.8.0_91.jdk / Contents / Home" सेट किया है "
पौराणिक

@Maven सैद्धांतिक रूप से आप STUDIO_SDK वैरिएबल सेट कर सकते हैं जो एंड्रॉइड स्टूडियो को चलाने के लिए एसडीके पथ होगा (जैसा कि स्टूडियो के कॉन्फिडेंशियल परम टूल टूल्स में कहा गया है ।android.com/tech-docs/configuration )। हालाँकि, मेरे मामले में मैंने यह तय नहीं किया कि चर और IDE उम्मीद के मुताबिक चल रहे हैं।
सर्जियो ए गुज़मैन

तुम सही हो। मैंने अलग-अलग चीजों की कोशिश की। यह वास्तव में 1.8 की समस्या ठीक से जुड़ा नहीं था। इसने इसे stackoverflow.com/a/35935433/2369867 को हल किया । धन्यवाद।
पौराणिक

2

उबुनुतु के साथ भी यही समस्या थी। समस्या Java8 के साथ IDE नहीं चल रही थी।

मैंने इसे OS के डिफ़ॉल्ट जावा प्रोग्राम को अपडेट करने के साथ तय किया,

sudo update-alternatives --config java

और संबंधित Java8 पथ को चुनना।


1

मैंने समस्या का सामना किया "एंड्रॉइड एन को जावा 1.8 या बाद के संस्करण के साथ आईडीई की आवश्यकता होती है।" C:\Program Files\Java\jdk1.8.0_92प्रोजेक्ट के JDK के रूप में सेटिंग के बावजूद त्रुटि दिखाई देती रही File > Project Structure

मैंने इसे अपने परिवेश चर में से JAVA_HOME अपडेट करके इसे हल C:\Program Files\Java\jdk1.7.0_67किया C:\Program Files\Java\jdk1.8.0_92। जब मैंने ऐसा किया और एंड्रॉइड स्टूडियो को पुनरारंभ किया, तो डिज़ाइन मोड उपलब्ध हो गया।

ओएस: विंडोज 10

एंड्रॉइड स्टूडियो: 2.1.2


1

मैंने इसे इस तरह से हल किया है। (AS + MAC OX El Capitan)

  1. SDK टूल> Android SDK प्लेटफ़ॉर्म टूल अपडेट करना
  2. मदद पर जाएं> कस्टम गुण संपादित करें> एक ​​डायलॉग संकेत देगा (हां दबाएं) फिर लिखें

    JVMVersion=1.8 

फिर एंड्रॉइड स्टूडियो को पूरी तरह से बंद करें और प्रोजेक्ट को फिर से लोड करें



0

मेरा मुद्दा यह था कि एंड्रॉइड एन "आंशिक रूप से स्थापित" था।

मेरा समाधान यह था कि - वरीयताएँ / उपस्थिति और व्यवहार / प्रणाली सेटिंग्स / Android SDK पर जाएं और स्थिति जांचें। यदि यह "आंशिक रूप से स्थापित" है तो आपको फिर से स्थापना रद्द करनी होगी। (चेकबॉक्स को अनचेक करें और हिट लागू करें; यह अनइंस्टॉल करेगा; फिर आप बॉक्स को चेक कर सकते हैं और फिर से इंस्टॉल कर सकते हैं) मेरे लिए काम किया। यदि आप निम्न संस्करण (जैसे 23) पर जाते हैं तो आपको buildToolsVersion वैरिएबल को build.gradle में "23.0.0" में बदलना होगा।


1
मेरा अभी भी कहते हैं "आंशिक रूप से स्थापित" पुनर्स्थापना के बाद।
एंड्रयू

मेरा भी पुनर्स्थापना के बाद "आंशिक रूप से स्थापित"। @ और क्या आपको बाद में कोई समाधान मिला?
पौराणिक

@ मेरे लिए, यह पता चला कि मेरी समस्या यह थी कि जब मैंने ऐप बनाने की कोशिश की तो मैं सही बिल्ड वेरिएंट का चयन नहीं कर रहा था।
एंड्रयू

0

मैं हाल ही में उसी समस्या का सामना कर रहा था। एपीआई पूर्वावलोकन स्तर को 23 या उससे कम पर बदलने का प्रयास करें। मेरे लिए यही काम किया।


0

मैंने उसी समस्या का सामना किया था। कृपया सुनिश्चित करें कि आप संकलित एसडीके संस्करण के लिए XML लेआउट प्रदान कर रहे हैं (अधिक से अधिक नहीं होना चाहिए)। यदि आप लक्षित SDK संस्करण 23 का उपयोग कर कोड को संकलित कर रहे हैं और SDK संस्करण 24 में XML को रेंडर करने की कोशिश कर रहे हैं, तो इसका मतलब है कि आप इसका सामना करेंगे।


0

मैक ओएस पर STUDIO_JDK सेट करते समय याद रखने वाली कई बातें हैं:

  • डिफ़ॉल्ट रूप से Apple के जावा 1.6 का उपयोग एंड्रॉइड स्टूडियो शुरू करने के लिए किया जाता है
  • जब STUDIO_JDK ओरेकल के जावा पर सेट किया जाता है तो इसे चलाने के लिए एंड्रॉइड स्टूडियो द्वारा उपयोग किया जाएगा

दो के बीच का अंतर यह है कि ऐप्पल के जावा आईएमओ आईडीई में एनआईकेयर और बेहतर फोंट एंटीएलियासिंग प्रदान करता है।

यहां एक उत्तर एंड्रॉइड स्टूडियो में फोंट एंटीलियासिंग के बारे में एक बग का संदर्भ दे रहा है । टिकट पहले से ही बंद है लेकिन अभी भी प्रतिपादन Apple जावा और ओरेकल एसडीके के लिए अलग है (मेरे पास v1.8.0_102 है)। और पूर्व में अभी भी पिछले से बेहतर धारणा है।


0

जावा 1.8 प्रोजेक्ट में उपयोग करने का प्रयास करें - JDK का अंतिम संस्करण डाउनलोड करें और इसे स्थापित करें (यदि JSK अनुपस्थित है)

फिर build.gradle इन पंक्तियों में जोड़ें android {... // केवल जावा मॉड्यूल का उपयोग करने वाले प्रत्येक मॉड्यूल के लिए कॉन्फ़िगर करें (या तो इसके स्रोत कोड में या // निर्भरता के माध्यम से)। compileOptions {sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8} // कोटलीन परियोजनाओं के लिए kotlinOptions {jvmTarget = "1.8"}}


-1

मशीन: windows8 64bit मेरे मामले में jdk1.7 मैंने स्थापित किया था 32bit इसलिए मैं studio.exe (32bit) का उपयोग कर रहा था, तब भी जब मैंने नया jdk1.8 डाउनलोड किया था (64bit) मैं स्टूडियो उदाहरण का उपयोग कर रहा था (32bit cann ') टी इसका पता लगाएं, लेकिन जब मैंने पुराने jdk को अनइंस्टॉल कर दिया और स्टूडियो को फिर से चलाने की कोशिश की। मुझे एक 32bit jkk स्थापित करने के लिए कहा गया था। इसलिए मैंने Studios64.exe चलाया और यह आसानी से चला। सुनिश्चित करें कि आपके पास अपने पर्यावरण चर में सही रास्ता है। चीयर्स android एन


-1

सुनिश्चित करें कि आपने एंड्रॉइड स्टूडियो (x64) शुरू करते समय x64 के लिए jdk स्थापित किया है और x84 नहीं

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

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