添加Android Better Pickers作为gradle依赖项

时间:2014-01-20 12:06:58

标签: android android-studio android-support-library android-gradle

我首先添加了android支持库并测试了我可以使用它。但是,当我在Android Better Pickers maven存储库中添加this时,出现以下错误:

  

Gradle'bumble'项目刷新失败:无法找到   com.google.android:support-v4:18。要求:myapp:app:unspecified   com.doomonafireball.betterpickers:库:1.4.2

这是我在MyProject中的build.gradle中设置依赖项的方法 - >应用

dependencies {
    compile 'com.android.support:support-v4:18.0.+'
    compile 'com.doomonafireball.betterpickers:library:1.4.2'
}

Android Better Pickers在build.gradle中有以下内容,并打包为aar。

dependencies {
    compile 'com.android.support:support-v4:18.0.+'
    compile 'com.nineoldandroids:library:2.4.0'
}

有人知道解决方案吗?

编辑

Android更好的选择器现在从v 1.5开始就具有gradle支持!现在很容易将它添加为库,只需按照那里的指南进行操作,并且在更改build.gradle后不要忘记执行干净的AND gradle同步。然而,这个问题的部分答案仍然适用于无gradle项目。

1 个答案:

答案 0 :(得分:2)

首先确保您在File >Project Structure >Android SDK

中指向正确的sdk

要使用Support Jar,您必须从SDK Manager安装Android Support Repository。 Android Manager工具栏中提供了SDK管理器图标。

enter image description here

你应该知道的知识:

1.如果已经在任何一个库模块中添加了依赖项,则无需在主模块中添加任何依赖项。因此,从主模块中删除支持依赖项。

这样做:

 dependencies {
         compile 'com.doomonafireball.betterpickers:library:1.4.2'
 }

2. android studio(0.4.2)中的依赖管理存在一些问题,Android Studio(0.4.3)修复了此问题,但在发布之前还检查了这个问题以及任何与依赖相关的问题。

Import Google Play Services library in Android Studio

编辑:

我已经检查了github存储库,日期选择器有没有gradle依赖

以下是

  1. 从github下载存储库

  2. 将库目录复制到项目的根目录中,或者创建一个目录并将所有库保存在其中。以下配置是直接在root中,我已将“library”重命名为 datepickerlibrary

  3. 修改 build.gradle 附带库

  4. 数据选择器库模块中的

    build.gradle

    buildscript {
        repositories {
            mavenCentral()
        }
    
        dependencies {
            classpath 'com.android.tools.build:gradle:0.5.+'
        }
    }
    
    apply plugin: 'android-library'
    
    android {
        compileSdkVersion 17
        buildToolsVersion '19.0.0'
    
        sourceSets {
            main {
                manifest.srcFile 'AndroidManifest.xml'
                java.srcDirs = ['src']
                res.srcDirs = ['res']
            }
        }
    }
    apply plugin: 'maven'
    apply plugin: 'signing'
    
    version = "1.4.0"
    isReleaseVersion = !version.endsWith("SNAPSHOT")
    group = "com.doomonafireball.betterpickers"
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        compile 'com.android.support:support-v4:18.0.+'
        compile 'com.nineoldandroids:library:2.4.0'
    }
    

    主要模块的build.gradle 中的依赖关系应该是这样的:

    dependencies {
    
        compile project(':datepickerlibrary')   //if it is inside some sub directory you can give path like ':libraries:datepickerlibrary' depends on you
    
    }
    

    settings.gradle 中添加此行,该行位于项目目录的根目录中:

    include ':datepickerlibrary'
    

    完成所有检查后,请使用gradle同步项目。

    它对我有用,请告诉我是否有任何问题。

    原作者说明

    我最终做了类似于上面的事情并且效果很好!我作为摘要做了什么:

    1. 已下载并手动将库添加为Android Studio中的依赖项
    2. 从库的build.gradle中删除了以下内容(找不到sonytype类的异常或类似内容)

      beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
      
      repository(url: sonatypeRepo) {
          authentication(userName: sonatypeUsername,
                  password: sonatypePassword)
      }
      
    3. 更新了库的SDK版本以匹配我安装的版本。