Android外部库问题

时间:2015-02-07 21:04:26

标签: java android android-library

我正在尝试将现有的Android项目用作我的应用的库:

https://github.com/LarsWerkman/HoloColorPicker

java代码编译,但是当我运行我的应用程序时,会发生以下错误:

java.lang.ClassNotFoundException: Didn't find class
"com.larswerkman.colorpicker.ColorPicker" on path: 
DexPathList[[zip file "data/app/myApp.apk"], nativeLibraryDirectories=
[/data/app-lib/myApp, /system/lib]]

我知道我不是第一个解决这个例外的人,但我真的没有灵感。我尝试了以下方法:

  • 在“属性”中包含项目 - > Android - >添加...
  • 在Java Build Path中包含项目 - >项目 - >添加...
  • 在Java Build Path中标记项目 - >订单和出口
  • 在Java Build Path中包含.jar - >库 - >添加JAR

这些都没有解决问题。我想知道将项目作为库包含的方法是什么。

此外,ColorPicker项目的文档说我将其作为依赖项包含在某处:

dependencies {
    compile 'com.larswerkman:HoloColorPicker:1.4'
}

我应该在哪个文件中包含此内容?

1 个答案:

答案 0 :(得分:0)

您应该将其包含在应用程序的build.gradle文件中。

这就是build.gradle的样子:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.android.support:recyclerview-v7:+'
    compile 'com.android.support:support-v4:+'
    compile 'com.larswerkman:HoloColorPicker:1.4'
}

上面我已经包含了HoloColorPicker库。

enter image description here