2014-10-17 208 views
29

我已经创建Android库作为Android Studio模块。作为依赖添加到我的根模块。虽然编码我可以从库包中导入任何类,但是当我尝试运行该应用程序时,我收到错误package some.mylibrary.project does not existAndroid Studio库“错误:包不存在”

的build.gradle根模块

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.12.+' 
    } 
} 
apply plugin: 'com.android.application' 

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
    compile 'com.android.support:appcompat-v7:20.+' 
    compile 'com.google.android.gms:play-services:5.+' 
    compile project(':libraries:mylibrary') 
} 

android { 
    compileSdkVersion 17 
    buildToolsVersion "20.0.0" 

    lintOptions { 
     disable 'InvalidPackage' 
     checkReleaseBuilds false 
     abortOnError false 
    } 

    *** 
} 

的build.gradle库模块

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.12.+' 
    } 
} 

apply plugin: 'com.android.application' 
apply plugin: 'idea' 

android { 
    compileSdkVersion 17 
    buildToolsVersion "20.0.0" 

    *****  
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
} 

settings.gradle

include ':libraries:mylibrary' 

P.S.我不得不提到项目是从Eclipse IDE导出的,所以项目结构与默认项目结构不同。

回答

12

如果您有一个库模块,它不能在模块定义中使用apply plugin: 'com.android.application'语句,否则该构建将在您看到时以静默方式失败。改为使用apply plugin: 'com.android.library'

的bug已经提交请求将构建系统故障大声,而不是默默地当发生这种情况:https://code.google.com/p/android/issues/detail?id=76725

+1

完美工作,谢谢! – MathieuMaree 2014-10-31 14:49:41

+0

错误:(2,0)找不到id为'com.android.library'的插件。 – Machado 2015-01-26 19:15:14

+13

嗯,这个错误发生在我的图书馆模块中。它不使用'apply plugin:'com.android.application'' – 2015-04-17 05:36:16

10

了解Android Studio 2.2.2

是,库模块,它可以”在模块定义中使用apply插件:com.android.application语句,是的,请使用apply插件:com.android.library。 (仍在LIB模块)

但你必须做到以下几点:

  1. 暴露出摇篮文件相同的SDK版本为两个模块。 >开放式模块设置
  2. 单击“依赖性”选项卡
  3. 点击+号添加一个新的依赖,并选择“模块依赖关系” -
  4. 在您的项目“应用程序”模块文件夹,点击右键
  5. 寻找您需要的图书馆并添加它。

同时命名你的lib模块避免首都。

-3

其工作 编译 'io.github.kobakei:ratethisapp:1.2.0'

+0

我不明白你的答案。如果这是插入OP项目的代码,那么请添加注释说明它应该到哪里。 – 2017-11-03 22:53:20

相关问题