9

मेरे पास इंटेलिजे आईडीईए में एक एंड्रॉइड प्रोजेक्ट है। इसमें दो मॉड्यूल होते हैं: ऐप और लाइब्रेरी। ऐप लाइब्रेरी और लाइब्रेरी पर निर्भर करता है ऐप पर निर्भर करता है (हाँ, यह अच्छा नहीं है, लेकिन मेरे पास मेरे पास है और इसे बदल नहीं सकता है)। परियोजना सेटिंग्स में आईडीईए मुझे परिपत्र निर्भरताओं के बारे में चेतावनी देता है, लेकिन परियोजना सही ढंग से बनाता है। परियोजना संरचना इस तरह दिखता है:एंड्रॉइड ग्रैडल बिल्ड और सर्कुलर निर्भरता

project 
|__app 
| |__src 
| |__build.gradle 
|__libarary 
| |__src 
| |__build.gradle 
|__build.gradle 
|__settings.gradle 

अब मैं नए Android निर्माण प्रणाली Gradle के आधार पर करने के लिए विस्थापित करने और यहां एक परेशानी है कोशिश कर रहा हूँ। मेरी appbuild.gradle से मॉड्यूल में मैं library

compile project(":library") 

पर निर्भरता को जोड़ने इसके अलावा, मैं

compile project(":app") 

तरह app पर library में निर्भरता को जोड़ने के लिए tryed लेकिन निर्माण प्रणाली, जब Gradle trys पुस्तकालय मॉड्यूल इकट्ठा करने के लिए से त्रुटि हो जाता है :

FAILURE: Build failed with an exception. 

* What went wrong: 
A problem occurred configuring project ':app'. 
> Failed to notify project evaluation listener. 
    > Module version project:app:unspecified depends on libraries but is not a library itself 

परियोजना संरचना को बदलने के बिना मैं इसके साथ क्या कर सकता हूं

+0

उन्हें निर्माण करने के लिए ... एक साथ प्रयास के लिए योजना बनाई है! –

+0

हाय, क्या आपको इस मुद्दे का समाधान मिला है? – mariosangiorgio

+2

@ mariosangiorgio, दुर्भाग्य से नहीं, मैंने अपनी परियोजना संरचना –

उत्तर

0

पुस्तकालय परियोजना उपयोग में:

apply plugin: 'android-library'

एप्लिकेशन परियोजना उपयोग में:

apply plugin: 'android'

सुनिश्चित करें कि आप नवीनतम एंड्रॉयड उपकरणों है:

classpath 'com.android.tools.build:gradle:0.5.+'

+0

पर आपके ऐप और आपकी लाइब्रेरी दोनों को कोड को कारगर करने की आवश्यकता होगी, हां, मैं इस सेटिंग्स का उपयोग करता हूं लेकिन यह काम नहीं कर रहा है –

1

यह पैरामीटर बदल गए हैं।

अब आप refactor चाहिए:

पुस्तकालय परियोजना उपयोग में: 'com.android.library'

एप्लिकेशन परियोजना उपयोग में::

प्लगइन लागू प्लगइन लागू करें: 'com.android.application'

0

तुम यहाँ एंड्रॉयड 3.0 के साथ एक ही त्रुटि के लिए खोज आते हैं तो आपको पता होना चाहिए वर्तमान समाधान नहीं है: kotlinVersion = '1.1.2-2'

को

ढाल और gradle.properties kotlin में वृद्धिशील निर्माण को अक्षम करें। वृद्धिशील = false

मुद्दा अगले अल्फा https://issuetracker.google.com/issues/38447344

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