त्रुटि: दुर्भाग्य से आपके पास एक परियोजना में गैर-ग्रेड जावा मॉड्यूल और> एंड्रॉइड-ग्रेड मॉड्यूल नहीं हो सकते हैं


230

मेरे पास एक IntelliJ 14.1.2 परियोजना है जिसमें दो मॉड्यूल हैं - एक एंड्रॉइड ग्रैडल आधारित मॉड्यूल है और दूसरा मावेन के साथ स्प्रिंग जावा-आधारित मॉड्यूल है।

gps-trackman.v1 मेरी जड़ परियोजना है और मैंने इस परियोजना के लिए कोई आउटपुट या पहलू कॉन्फ़िगर नहीं किया है। ऐप मेरा एंड्रॉइड ग्रेडल मॉड्यूल है और मैंने इस प्रोजेक्ट के लिए एंड्रॉइड और एंड्रॉइड-ग्रैडल फेससेट कॉन्फ़िगर किया है और जीपीएस-ट्रैकमैन मेरा स्प्रिंग मैवेन प्रोजेक्ट नहीं है। मैं सब कुछ एक साथ बनाने में सक्षम होना चाहता हूं। क्या यह संभव है?

मुझे अब यह त्रुटि संदेश मेरे IntelliJ Eventlog में मिलता है

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

प्रोजेक्ट 'gps-trackman.v1' ग्रैडल-आधारित नहीं है

क्या यह त्रुटि सिर्फ मेरी परियोजना की गलत धारणा के कारण है या क्या वास्तव में एक परियोजना में मावेन मॉड्यूल और ग्रैड मॉड्यूल होना संभव नहीं है?

क्या मुझे रूट प्रोजेक्ट के लिए किसी भी पहलू को कॉन्फ़िगर करना होगा? वैकल्पिक रूप से, क्या मुझे अपने मावेन को धर्मान्तरित करना होगा?


क्या आप मावेन परियोजना को धराशायी करने के लिए विरोध कर रहे हैं?
रा.ग. २ Ra

हां, तब मैंने मावेन परियोजना को ग्रैडल परियोजना में बदलने की कोशिश की है, लेकिन इसके परिणामस्वरूप अन्य त्रुटियों का एक समूह है, इसलिए मैं मावेन के साथ रहना पसंद करूंगा ...
kamokaze

1
ठीक है, मैं सिर्फ यह नोट करना चाहता था कि एंड्रॉइड प्रोजेक्ट के उपप्रोजेक्ट के रूप में एक नियमित जावा ग्रेडल प्रोजेक्ट को जोड़ना संभव है।
रा.ग. २ Ra

1
क्या आपके द्वारा JetBrains YouTrack टिकट IDEA-122904 द्वारा बताई गई समस्याएं हैं ? यदि हां, तो क्या वहाँ सूचीबद्ध कोई भी कार्य मदद करता है?

जवाबों:


397

1- प्रोजेक्ट बंद करें

2- Android Studioआईडीई बंद करें

3- .ideaडायरेक्टरी को डिलीट करें

4- सभी .imlफाइलों को डिलीट कर दें

5- Android Studioआईडीई खोलें और परियोजना को आयात करें

यहाँ से उत्तर दीजिए


14
मेरे लिए सिर्फ हटाने के साथ काम किया।। आइडिया dir, astudio 3.5 पर
लेर्स एल्ड्टाई

3
क्या यह एंड्रॉइड स्टूडियो के केवल विशिष्ट संस्करणों पर काम करता है?
स्टाल रब्बी

सावधान रहना हटाने .idea निर्देशिका। उस निर्देशिका में बहुत सारा सामान है जो खो जाने पर और ऑटो-जेनरेट नहीं होने पर आप ए / एस को फिर से लॉन्च करेंगे। विशेष रूप से codeStylesऔरdictionaries
tir38

यह 3.6.3 के रूप में भी काम करता है। मैंने सिर्फ आईडीई को बंद कर दिया, फाइलों को हटा दिया और फिर से खोल दिया। परियोजना को बंद नहीं करना था और न ही आयात करना था (मेरा मानना ​​है कि आईडीई इसे वैसे भी करता है)।
JCarlosR

@ tir38, मुझे लगता है कि .idea फ़ोल्डर में सभी फाइलें स्वतः-जनरेट होती हैं। डिलीट करते समय परेशान होने की जरूरत नहीं है। Android Studio हर फाइल को खुद बनाता है।
नव

86
  1. फ़ाइल पर जाएं -> अमान्य कैश / पुनरारंभ करें।
  2. प्रोजेक्ट बंद करें।
  3. प्रोजेक्ट फ़ोल्डर पर जाएं और .idea फ़ोल्डर हटाएं।
  4. प्रोजेक्ट फ़ोल्डर में YourProjectName.iml हटाएं।
  5. एप्लिकेशन फ़ोल्डर में app.iml हटाएं।
  6. Android स्टूडियो खोलें -> मौजूदा परियोजना खोलें, और फिर अपनी परियोजना चुनें।
  7. लोड सेटिंग्स त्रुटि और असमर्थित मॉड्यूल का पता चला त्रुटि दूर हो जाएगी।

1
धन्यवाद। इसने मेरी मदद की। और समाधान सुंदर है! :) लेकिन इसके साथ: ग्रेड फाइल के साथ सिंक प्रोजेक्ट
user_MGU

फ़ाइल क्या हैं। .ignignore में कॉन्फ़िगर करेंगे, क्या आप नई परियोजना के लिए सुझाव दे सकते हैं।
मोहनराज एस

1
1.a "अमान्य कैश / पुनरारंभ करें" का चयन करने के बाद एक संवाद प्रकट होता है। केवल "अमान्य" विकल्प चुनना सुनिश्चित करें और मैन्युअल रूप से एंड्रॉइड स्टूडियो बंद करें। यदि आप "अमान्य + पुनरारंभ करें" चुनते हैं तो एंड्रॉइड स्टूडियो चरण 3-5 को पूरा करने से पहले पुनः आरंभ करेगा।
स्टुअर्ट स्कैचर

@MohanRajS, सभी फाइलें जो स्वतः उत्पन्न होती हैं, उन्हें अनदेखा किया जाना चाहिए। उदाहरण के लिए- हर iml फाइल, .idea फोल्डर, .gradle फोल्डर, बिल्ड फोल्डर, .classpath .project, .log, .apk, .aab आदि
Neo

19

मेरे मामले में सेटिंग .ग्रेड में अमान्य कॉन्फ़िगरेशन है।

मैं बदल गया:

include ':app'
rootProject.name='<somthing else>'

सेवा:

include ':app'

त्रुटि हो गई है। तो हो सकता है कि संभावित त्रुटियों के लिए अपनी सेटिंग्स की जाँच करें। अगर यह काम नहीं करेगा तो कैश और अन्य युक्तियों को हटाने की कोशिश करेंगे।


1
इसने मेरे लिए यह तय किया
कोड विगैट

17

सबसे पहले आपको Android Studio Source में अपडेट करना चाहिए: https://code.google.com/p/android/issues/detail?id=77983

फिर आपको फ़ाइल -> अमान्य कैश / पुनरारंभ करें -> अमान्य कैश और पुनरारंभ करें पर जाना चाहिए।

फिर एप्लिकेशन को फिर से बनाने का प्रयास करें।

मैं इस सवाल का जवाब मिल गया यहाँ


8
मैं एंड्रॉइड स्टूडियो का उपयोग नहीं करता हूं। यह मेरा मामला नहीं है!
kamokaze

1
क्या "असमर्थित मॉड्यूल का पता लगाया जा रहा था: संकलन निम्नलिखित मॉड्यूल के लिए समर्थित नहीं है: मोबाइल। दुर्भाग्य से आपके पास एक परियोजना में गैर-ग्रेड जावा मॉड्यूल और एंड्रॉइड-ग्रेड मॉड्यूल नहीं हो सकते हैं" - इससे मुझे मदद मिली। धन्यवाद!
जेसी कैरलिलो

14
  1. प्रोजेक्ट बंद करें
  2. बस .idea फ़ोल्डर में मॉड्यूल को हटाएं।
  3. प्रोजेक्ट को फिर से खोलें।

1
मेरे लिए एंड्रॉइड स्टूडियो 4.0 के साथ काम किया
अफिलु

12

सब से ऊपर की कोशिश की। काम नहीं किया।

यहाँ क्या काम किया है। मॉड्यूल.xml नामक फ़ाइल पर जाएं

वहां सभी मॉड्यूल को हटा दें। स्वच्छ और पुनर्निर्माण।


3
इसने मेरे लिए काम किया। मेरे पास एक ग्रेड मॉड्यूल पर यह त्रुटि थी जिसे बाद में हटा दिया गया था लेकिन त्रुटि बताई जा रही है, कोई फर्क नहीं पड़ता। मॉड्यूल से मॉड्यूल को निकालना.एक्सएमएल ने काम किया जबकि बाकी सब कुछ नहीं हुआ।
3c71

10

सुनिश्चित करें कि आपने अपने मॉड्यूल को settings.gradleफ़ाइल में जोड़ा है :

include ':app'
include ':your-module'

10

हैलो डेवलपर्स यहाँ इस त्रुटि का अंतिम समाधान है:

समाधान 1

चरण 1 फ़ाइल पर जाएं -> अमान्य कैश / पुनरारंभ करें।

चरण 2 परियोजना को बंद करें।

चरण 3 परियोजना फ़ोल्डर पर जाएं और .idea फ़ोल्डर हटाएं।

चरण 4 प्रोजेक्ट फ़ोल्डर में YourProjectName.iml हटाएं।

चरण 5 आपको एक फ़ोल्डर दिखाई देगा जिसमें नीचे की ओर फ़ोल्डर है, YourProjectName फ़ोल्डर हटाएं (इसमें एक अन्य YourProjectName.im फ़ाइल शामिल है)।

चरण 6 ओपन एंड्रॉइड स्टूडियो -> मौजूदा परियोजना खोलें, और फिर अपनी परियोजना का चयन करें।

**

समाधान २

**

चरण 1: दूषित परियोजना खोलें (एक त्रुटि दिखा रहा है)।

चरण 2: ओपन system.gradle फ़ाइल।

चरण 3: कोड की इस पंक्ति को जोड़ें include ':app'

चरण 4: सिंक फाइल को सिंक करने के लिए, सिंक पर क्लिक करें।

बधाई!!! त्रुटि फाइनल किया गया


1
.idea फ़ोल्डर और .iml फ़ाइल को हटाने में मदद मिली।
Redar

2
यह पिछले उत्तरों से कैसे भिन्न है। आपके द्वारा किए गए सभी शीर्ष दो मौजूदा उत्तर संकलित किए गए थे।
tir38

7

Ctrl-Alt-S> "एंड्रॉइड सपोर्ट" प्लगइन को अनचेक करें

(काश मैं आपको बता सकता कि यह वास्तव में क्यों काम करता है, लेकिन मैं ऐसा नहीं कर सकता। यदि आप एंड्रॉइड के लिए विकसित करना चाहते हैं, तो एंड्रॉइड स्टूडियो का उपयोग करने का प्रयास करें, जो कि Jetbrains द्वारा भी बनाया गया है।)


2
File -> Settings (= STRG+ALT+S) -> Plugins -> uncheck "Android Support" JetBrains हेल्प पेज
योजनाएं

1
मेरे मामले में मेरे पास ऐसा कोई प्लगइन नहीं था, लेकिन "मार्कडाउन प्लगइन" को लाल असंगत के रूप में चिह्नित किया गया था, मैंने इसे अनइंस्टॉल कर दिया और एएस पुनरारंभ होने के बाद समस्या को हल किया।
djdance

6

एंड्रॉइड स्टूडियो 3.3 कैनरी 13 के साथ एक ही मुद्दा था।

मैं इन चरणों का पालन करके इसे हल करने में सक्षम था:

  • मॉड्यूल सेटिंग्स पर जाएं और अपने मॉड्यूल को सूची से हटा दें
  • Settings.gradle संपादित करें और अपने मॉड्यूल को वहां से भी हटा दें
  • मॉड्यूल निर्देशिका को प्रोजेक्ट से बाहर ले जाएं (उदाहरण के लिए अपने डेस्कटॉप पर)
  • फिर मॉड्यूल सेटिंग्स में फिर से एक मॉड्यूल जोड़ें और टाइप करें 'इम्पोर्ट ग्रैडल प्रोजेक्ट' चुनें जिसमें आप अपने डेस्कटॉप पर ले गए मॉड्यूल फ़ोल्डर (या कहीं और) का चयन करें

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

इस टिप्पणी पर मेरे समाधान के आधार पर: https://issuetracker.google.com/issues/37008041#comment3


3

किसी कारण से, आप .idea फ़ोल्डर को हटा नहीं सकते हैं

सबसे अच्छा तरीका है

  • .Idea के अंदर सभी फ़ाइलों को हटाएं
  • हटाओ .idea


2

इस समाधान ने मेरे लिए एंड्रॉइड स्टूडियो 3.3.2 काम किया।

  1. प्रोजेक्ट निर्देशिका से .iml फ़ाइल हटाएँ।
  2. एंड्रॉइड स्टूडियो फाइल में- कैश को फिर से चालू / रीस्टार्ट करें।
  3. स्वच्छ और पुनर्निर्माण परियोजना अगर ऑटो निर्माण त्रुटि फेंकता है।

2

ऊपर किसी ने मेरे लिए काम नहीं किया, लेकिन कुछ यादृच्छिक की कोशिश की और यह काम किया।

  1. दूषित प्रोजेक्ट निर्देशिका की प्रतिलिपि बनाएँ।
  2. इसे कहीं और चिपकाएँ।
  3. इसे Android Studio में आयात करें। (फाइल-> नया-> आयात परियोजना)
  4. और अनियंत्रित परियोजना बहाल हो जाती है।

PS: आपके पास मूल दूषित प्रोजेक्ट होना चाहिए। (मतलब, परियोजना संरचना में छेड़छाड़ के बिना इसे कॉपी करें)



2

आप बस अपने वर्तमान Android स्टूडियो संस्करण को फिट करने के लिए अपनी श्रेणी निर्भरता को डाउनग्रेड कर सकते हैं।

dependencies {
        classpath 'com.android.tools.build:gradle:3.5.2'
        ....
}

मेरे लिए काम किया।


1

मेरे लिए, मेरी परियोजना बहुत भ्रष्ट थी। मुझे नहीं पता कि मैं उस राज्य में कैसे गया। मैंने जो देखा, वह यह था कि कई। Regle फ़ाइल और proguard फ़ाइल में xml सामग्री का एक पूरा बंडल था। सौभाग्य से, भौतिक फ़ाइल में सही सामग्री थी, लेकिन एंड्रॉइड स्टूडियो इसे कुछ एक्सएमएल फ़ाइल के रूप में प्रदर्शित कर रहा था जो ऐसा लगता था कि यह कुछ उत्पन्न रेस xml डेटा से संबंधित था। "सिंक टू फाइल सिस्टम" या "सिंक प्रोजेक्ट टू सिंक फाइल", "कैश एंड रिस्टार्ट" या "ग्रेडलेव क्लीन" जैसी चीजें समस्या को स्पष्ट नहीं करती हैं। मैंने भी मूल सामग्री के साथ ग्रेड स्क्रिप्ट में प्रदर्शित होने वाले फर्जी xml डेटा को बदल दिया, लेकिन इससे भी मदद नहीं मिली। मैंने ऊपर दी गई कुछ सलाह की कोशिश की, लेकिन उन्होंने या तो काम नहीं किया या मेरे लिए बहुत जटिल लग रहा था कि मेरी परियोजना एक अच्छी स्थिति में वापस आ जाएगी।

इसलिए मैंने एक नई रिक्त परियोजना बनाने के लिए चुना। फ़ाइल एक्सप्लोरर का उपयोग करते हुए, मैंने भ्रष्ट प्रोजेक्ट में सभी मॉड्यूल को एक नए प्रोजेक्ट (एक सादे पुरानी कॉपी और पेस्ट) में कॉपी किया। मैंने नई सेटिंग्स की "settings.gradle" और रूट "build.gradle" फाइलों को भी बदल दिया। पुरानी फ़ाइल से सामग्री। एक बार जब यह हो जाता है, तो आपको "सिंक प्रोजेक्ट को सिंक फ़ाइलों के साथ चलाना पड़ता है और आप अच्छे से अच्छे होते हैं। यदि संयोग से आपके प्रोजेक्ट रूट में कुछ ऐसी सामग्री है जिसे आपने भौतिक रूप से जोड़ा है, तो आपको उस पर भी कॉपी करना होगा।

ताकि आपको काम करने में मदद मिले। मुझे यकीन नहीं है कि मेरे प्रोजेक्ट के भ्रष्ट होने का क्या कारण है, लेकिन मुझे लगता है कि यह नींद मोड में जाने वाले लैपटॉप के साथ करना पड़ सकता है। मेरा लैपटॉप मुझे नींद से जागने की अनुमति नहीं दे रहा था और मेरे लिए जागने का एकमात्र तरीका फिर से बिजली बंद करना था। जब कुछ हुआ तो मैंने कुछ प्रोजेक्ट खोले। तो यह मेरा सबसे अच्छा अनुमान है कि कैसे परियोजना भ्रष्ट हो सकती है।


1

प्रोजेक्ट फाइलों को मूल स्रोत से कॉपी करें और कहीं पेस्ट करें और फिर एंड्रॉइड स्टूडियो से आयात करें।


1

हर बार जब मैंने कोई प्रोजेक्ट खोलने की कोशिश की तो कुछ समय के लिए इस मुद्दे से निपटना पड़ा।

मुझे यह त्रुटि हमेशा प्राप्त होती है, हालांकि मुझे पता था कि मैंने कोई भी बदलाव नहीं किया है जो कि ज़िप से निर्यात करने के अलावा इसके कारण होना चाहिए।

ठीक करने के लिए:

  • एक नया प्रोजेक्ट या ओपन प्रोजेक्ट बनाएं जो काम करे
  • फ़ाइल> ओपन> "अपने प्रोजेक्ट" पर जाएं
  • सुनिश्चित करें कि आपका डमी प्रोजेक्ट खुला रहता है। जिस प्रोजेक्ट में आपको त्रुटि हो रही थी, उसे एक नई विंडो में खोला जाना चाहिए।

यह मेरे लिए किसी भी परिवर्तन या कुछ भी हटाने के बिना तय की।


0

त्रुटि सब बातों, विचार के बीच उलझन में है समझाने Gradle और Maven

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

वसंत गाइड से इस उदाहरण को देखें


0

इस मंच में मैंने पाया निम्न समाधान एक आकर्षण की तरह काम करता है:

1- प्रोजेक्ट बंद करें

2- एंड्रॉइड स्टूडियो आईडीई बंद करें

3- उस निर्देशिका में .idea निर्देशिका को हटाएं जहां आपका ऐप रहता है

4- जहां आपका ऐप रहता है उस डायरेक्टरी में सभी .iml फाइल्स को डिलीट करें

5- एंड्रॉइड स्टूडियो आईडीई खोलें और परियोजना को आयात करें

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