将使用AA的“.aar”依赖项添加到Android Studio 1.1.0中的应用程序模块

时间:2015-06-16 09:38:55

标签: android gradle android-annotations aar

我关注的是帖子:post 但在关注该帖后仍然遇到错误:

  

无法找到方法   org.androidannotations.api.view.OnViewChangedNotifier.replaceNotifier,   从方法MyClass_.getInstance _

引用

我的库使用Android Annotations作为DI / IoC。

.gradle文件中的库模块依赖项是:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
    apt "org.androidannotations:androidannotations:3.+"
    compile "org.androidannotations:androidannotations-api:3.+"
    testCompile "junit:junit:4.12"
}

我在.gradle文件中的主机App模块依赖项是:

repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'
    compile(name: 'my-lib', ext: 'aar') // NOT WORKING  
}

OR

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'    
    compile project(':my-lib') // NOT WORKING 
}

P.S。 问题是测试(主机/客户端)应用程序无法识别AA依赖项。因此,您需要将AA依赖项明确添加到Test应用程序中,它就像魅力一样。

但是我想只将我的库的AAR存档文件提供给客户端,因此它可以直接用于其应用程序而无需添加AA依赖项。要将AA罐直接添加到库模块中,我遵循Android Studio的AA配置指南:AA Configure Guide之后我仍然遇到了无法创建AAR存档的库模块的错误。库不识别对内部方法的调用。 MyClass_.getInstance_(context);向我展示如下:

  • 注意:某些输入文件使用或覆盖已弃用的API。
  • 注意:使用-Xlint重新编译:弃用以获取详细信息。
  • 注意:MyClass.java使用未经检查或不安全的操作。
  • 注意:使用-Xlint重新编译:取消选中以获取详细信息。

0 个答案:

没有答案