我正在尝试构建从Git存储库导入的Android应用程序。这个相同的应用程序在另一个环境中正确构建,但在我的环境中,我收到以下错误:
Error:(41, 13) Failed to resolve: com.afollestad:material-dialogs:0.7.7.0
我的build.gradle:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 22
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "my.app.id"
minSdkVersion 16
targetSdkVersion 22
multiDexEnabled true
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:support-v4:22.2.0'
compile 'com.afollestad:material-dialogs:0.7.7.0'
compile 'com.michaelpardo:activeandroid:3.1.0-SNAPSHOT'
compile 'com.github.navasmdc:MaterialDesign:1.2'
compile 'com.android.support:multidex:1.0.1'
compile 'com.squareup.retrofit:retrofit:1.9.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.1.0'
compile 'com.squareup.okhttp:okhttp:2.1.0'
compile 'com.google.code.gson:gson:2.3.1'
compile 'joda-time:joda-time:2.3'
compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'
compile 'com.andreabaccega:android-form-edittext:1.2.1@aar'
compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
transitive = true;
}
}
我也尝试了不同的版本(0.7.7.0,0.7.6.0,0.7.5.5),但没有任何变化。我该如何解决我的问题?
答案 0 :(得分:6)
在jCenter上,只有两个版本可用0.7.9.0和0.7.9.1。这些版本在Maven Central中不可用,因此请检查您正在使用build.gradle
的项目jcenter()
。
BTW这些版本未更新,GitHub中发布的最新版本为0.8.5.1。
要使用项目中的最新版本,请使用以下说明:
<强>存储库强>
首先,将以下内容添加到应用的build.gradle文件中:
repositories { maven { url "https://jitpack.io" } }
<强>核心强>
核心模块包含此库的所有主要类, 包括MaterialDialog和AlertDialogWrapper。你可以创建基本的, 列表,单/多选,进度,输入等核心对话框。
dependencies { // ... other dependencies here compile('com.github.afollestad.material-dialogs:core:0.8.5.1@aar') { transitive = true } }
答案 1 :(得分:1)
问题是你使用targetSdkVersion 22
。如果您将targetSdkVersion
更新为23并在取消使用此最新库版本时,问题就会消失:
repositories {
jcenter()
}
dependencies {
compile('com.github.afollestad.material-dialogs:core:0.8.5.1@aar') {
transitive = true
}
}
但是如果你想使用22 SDK,你应该使用这样的依赖:
repositories {
maven { url "https://jitpack.io" }
}
compile ('com.github.afollestad:material-dialogs:53103863a6') {
transitive = true
}
这是支持22 SDK的最后一个版本 - v。 0.6.4.4 即可。但是在依赖项名称中使用旧版本号存在一些问题(可能是因为库作者已迁移到jCenter),您可以使用与this version相关的提交哈希的前10位数字。
答案 2 :(得分:0)
或者你可以使用它:
compile 'com.afollestad.material-dialogs:core:0.9.1.0'
而不是
compile 'com.afollestad:material-dialogs:0.7.7.0'