Dav*_*tos 6 android android-studio aar
我使用的是Android Studio 1.2
我创建了一个私有库,我想在另一个应用程序中使用它.
要使用它我创建一个AAR文件,但这个AAR不起作用.我的库中有一个对AAR文件的依赖.
AAR文件不依赖?
如果我使用jar,我包括创建所有依赖项,项目工作正常.
注意 :
我知道如何导入AAR文件.问题是在AAR中使用AAR ..
谢谢.
如果我正确理解您的问题,则涉及3个项目:
图书馆计划2 - >图书馆计划1 - >应用项目
您正在编辑"图书馆计划1",并已添加到它的app/build.grade对图书馆计划2的aar的依赖.像这样的东西:compile 'com.arasthel:gnavdrawer-library:1.1.5'
我不知道你在哪里遇到问题,但无论如何我都会尝试回答.如果我完全偏离基础,你能详细说明AAR依赖是如何工作的吗?任何错误消息?,找不到类/资源等.
我认为你不可能在图书馆计划1中使用图书馆计划2中的一个类,因为我自己尝试了这个并且似乎工作得很好.值得注意的是,Library Project 1 aar文件不会包含来自Library Project 2的类或资源.如果使用gradle的maven插件发布Library Project 1,则Library Project 2 将被注释为Library Project 1的pom中的依赖项.
我的猜测是你在应用程序项目中遇到问题?也许应用程序项目中找不到Library Project 2中的类?如果这是正确的,那么有两种可能的解决方案:
在Application项目的app/build.gradle中启用对aar依赖项的传递依赖:而不是compile 'com.example:myLibrary:versionX'
make it compile('com.example:myLibrary:versionX'){transitive=true}
.我刚刚验证了这导致gradle读取Library Project 1的pom并自动将其中的依赖项添加到Application Project中.
如果您想使用传递依赖项,您的图书馆计划将需要生成一个pom并将其与aar一起发布.有关如何使用此功能的其他信息,请参阅/sf/answers/2105997421/.
手动将库项目2的依赖项添加到应用程序项目 - 以便您的应用程序具有两个库的依赖项.根据您的具体情况,这可能是也可能不是可行的解决方案.
cod*_*zjx -2
将以下代码添加到您的项目 build.gradle 文件中,并且您应该将 AAR 文件放入 libs 文件夹中。
repositories {
mavenCentral()
flatDir {
dirs 'libs'
}
}
Run Code Online (Sandbox Code Playgroud)
最后将编译信息添加到您的依赖项中:
dependencies {
compile(name:'AARFileName', ext:'aar')
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5266 次 |
最近记录: |