2015-10-25 7 views
17

Я импортировал модуль в свой проект. Когда я перестроил проект, AS сообщила мне об ошибке «Предупреждение: зависимость Lib: неуказанная в проекте приложение разрешает архив APK, который не поддерживается как зависимость от компиляции. Я искал и изменил применить плагин: 'com.android.application' до apply plugin: 'com.android.library', а также удалил ApplicationId из defaultConfig. Тем не менее, я получаю эту ошибку "Warning:Dependency Lib:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency." Может ли кто-нибудь мне помочь?Ошибка проекта библиотеки Studio Studio

Вот мой Gradle код:

apply plugin: 'com.android.library' 

    android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

    defaultConfig { 
     minSdkVersion 12 
     targetSdkVersion 23 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    } 

    dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.0' 
    compile 'com.android.support:design:23.1.0' 
    compile project(':DimenLib') 
    } 
+0

Вы можете написать свой код градиента? – pRaNaY

+0

@David Это код градиента модуля или приложения, а также ошибка, которую вы получаете: «Warning: Dependency Lib: unspecified» показывает, что он не может найти lib, поэтому показывается неуказанный – Amar

+0

по такому же @Amar, если вы разрабатываете _app_ your gradle имеют 'apply plugin: 'com.android.application'' else, если это 'module', ваш gradle имеет' apply plugin: 'com.android.library' ' – pRaNaY

ответ

3

Использование apply plugin: 'com.android.application' вместо apply plugin: 'com.android.library'

применять плагин: 'com.android.application' применяет Android плагин для Gradle в этой сборке. Это добавляет специфические для Android задачи сборки к задачам сборки верхнего уровня 10 и делает элемент android {...} доступным для , чтобы указать варианты сборки для Android.

Посмотрите здесь

http://developer.android.com/tools/building/plugin-for-gradle.html

+0

http://stackoverflow.com/questions/27342458/apply-plugin-android-or-apply-plugin-com-android-application –

31

«Предупреждение: Зависимость от Lib: не определено на приложение проекта решает в архив APK, который не поддерживается в сборном зависимости.»

Это происходит, когда вы пытаетесь добавить зависимость, являющуюся APK.

Использование:

apply plugin: 'com.android.application' 

говорит Gradle, чтобы построить его в качестве приложения, генерирующего APK.

Использование:

apply plugin: 'com.android.library' 

он будет строить в виде библиотеки, генерируя AAR.

В вашем случае кажется, что вы меняете плагин в неправильном месте.
Это ваш основной модуль.

apply plugin: 'com.android.library' 

dependencies { 
    compile project(':DimenLib') 
} 

Перемещение apply plugin: 'com.android.library' в вашем DimenLib.

+0

Ya это прекрасно работает. –

1

У меня была такая же проблема, и это то, что решить ее:

  1. импортировать внешний проект, как описано здесь: https://www.youtube.com/watch?v=2D9lYuRECoI

  2. В моем build.gradle файл проекта добавлен проект компиляции (': IMPORTED_PROJECT_NAME ').

  3. Только тогда изменилось в импортирован проекта Gradle файл «применить плагин: com.android.application» «применять плагин: com.android.library» и удален ApplicationID.

Смежные вопросы