2016-03-08 120 views
0

我想在本示例项目中将本地Maven的Android归档文件(aar)集成到Android Studio中。使用Maven的Android归档库集成

我越来越Android Studio中下面的生成错误:

的问题发生评估项目:应用程序无法找到org.gradle.api.internal.[email protected]181db40 Property首页。

+0

可以请你告诉你的依赖? –

回答

0

如果您使用本地maven与android studio一起工作,您需要这样做意味着要添加对.aar包的引用,它必须理想地存储在中央Maven存储库中。

一个简单而直接的选择是在你的开发机器上创建一个本地maven仓库,并在那里安装你的库。然后从你的gradle构建中引用它。做这件事简直太令人惊讶了!

  1. 既然你是Android开发方面,我假设你已经安装了最新的JDK和设置JAVA_HOME环境变量,但如果你没有 - 现在是时候了。
  2. 然后你想安装Maven。您可以在这里下载它:http://maven.apache.org/download.cgi 将MAVEN_HOME环境变量设置为您提取maven的路径,并将maven的bin文件夹添加到PATH环境变量。
  3. 要测试Maven是做工精细,打开一个新的控制台窗口,运行以下命令:

    MVN -version

  4. 如果一切正常,它的时间,你的库添加到Maven仓库。在命令提示符下运行以下命令:

    mvn install:install-file -Dfile = d:\ mylibrary- {version} .aar -DgroupId = com.example -DartifactId = mylibrary -Dversion = {version} -Dpackaging = aar

不要忘记将适当的路径替换为您的库,设置您的groupId,artifactId和版本号。

  1. 最后,编辑你的build.gradle,开始查看本地的maven仓库。例如,如果您想同时使用maven central和您的本地repo,则可以将它们都添加到存储库配置中。

    buildscript { 
         repositories { 
         mavenCentral() 
    } 
    dependencies { 
        classpath 'com.android.tools.build:gradle:0.4.2' 
    } 
    } 
    
    apply plugin: 'android' 
    
    repositories { 
        mavenCentral() 
        mavenLocal() 
    } 
    
    dependencies { 
        compile('com.example:mylibrary:0.2') 
    } 
    
    android { 
        compileSdkVersion 17 
        buildToolsVersion '17.0.0' 
    } 
    
  2. 最后,运行构建命令来构建应用程序: gradle这个干净的构建 我们就以上述注册库下面是一个Android应用程序一个非常基本的build.gradle的例子。

主要问题是在maven发布配置文件中获取生成的.aar文件。为此,我们将调用android.libraryVariants来初始化此对象,并创建构建所需的所有子任务,包括创建.aar文件的“bundleRelease”。

这是我的构建。gradle这个文件看起来像:

rootProject.name =“在MyLibrary” :

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

apply plugin: 'android-library' 
apply plugin: 'maven-publish' 

version '0.2' 
group 'com.example' 

android { 
    compileSdkVersion 17 
    buildToolsVersion '17.0.0' 

    defaultConfig { 
     versionCode 2 
     versionName '0.2' 
    } 
} 

android.libraryVariants 
publishing { 
    publications { 
     maven(MavenPublication) { 
      artifact bundleRelease 
     } 
    } 
} 

如果你想改变的artifactId来定制的东西,你可以在settings.gradle加入这一行更改项目名称而已。现在,在项目的文件夹中打开一个命令提示符并运行以下构建和您的图书馆发布到本地Maven仓库:

gradle这个干净的构建publishToMavenLocal

,我用得到这个工作

几个基本的文章:

How to install maven on windows.

Adding local .aar to gradle build