ライブラリ読み込みの設定でエラー
READMEにはライブラリ読み込みの為に以下のように build.gradle に加えろって書いてある。
repositories { mavenCentral() maven { url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/" } } dependencies { compile 'com.google.zxing:core:2.2' compile 'com.embarkmobile:zxing-android-minimal:1.2.0@aar' }
これ、パッケージ(プロジェクト?)の build.gradle に書くとエラーが出る。
Error:(15, 0) No signature of method: org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() is applicable for argument types: (java.lang.String) values: [com.google.zxing:core:2.2] Possible solutions: module(java.lang.Object)
buildscript の中に既に repositories と dependencies があるから、ついそこに加えれば良いのかな?って…。
実際には top level の repositories と dependencies に加える。
というわけで、app の方の build.gradle に既に dependencies があるのでこっちに加えた。
動作確認用に作ったものだとこんな感じ。
apply plugin: 'android' android { compileSdkVersion 19 buildToolsVersion "19.0.3" defaultConfig { minSdkVersion 10 targetSdkVersion 19 versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } } } repositories { mavenCentral() maven { url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/" } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:19.1.0' compile 'com.google.zxing:core:2.2' compile 'com.embarkmobile:zxing-android-minimal:1.2.0@aar' }
これで [Sync Project with Gradle Files] すると、今度はエラーが出なくなる。