我正在开发移动应用项目以进行工作,但是当我尝试运行应用程序时,它会给我以下错误:
错误:配置根项目' projectName'时出现问题。 无法解析配置':classpath'的所有依赖项。 无法解决com.android.tools.build:gradle:2.2.3。 要求: :项目名称:未指定 没有缓存版本的com.android.tools.build:gradle:2.2.3可用于离线模式。
我尝试了很多不同的事情,包括在设置中取消选择离线工作复选框,然后关闭并重新打开Android Studio,但似乎没有解决问题。它可以连续几次构建正常,但同样的错误不断出现。然后,我必须尝试构建和制作应用程序的变体,或退出和重新打开Android工作室。没有什么能持续有效。任何洞察可能导致此问题的原因以及如何解决该问题将不胜感激。
***更新:根据要求,我已添加以下我的应用程序gradle内容
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "24.0.1"
useLibrary 'org.apache.http.legacy'
dexOptions {
javaMaxHeapSize "8g"
}
defaultConfig {
applicationId "com.example"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug{
debuggable true
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.google.android.gms:play-services:9.4.0'
compile 'com.android.support:recyclerview-v7:24.2.1'
compile 'com.android.support:support-v4:24.2.1'
compile files('libs/gson-2.2.2.jar')
compile group: 'cz.msebera.android' , name: 'httpclient', version: '4.4.1.1'
compile 'com.facebook.stetho:stetho:1.3.1'
compile 'com.loopj.android:android-async-http:1.4.9'
}
答案 0 :(得分:4)
事实证明,我的特定问题的解决方案相对简单。错误消息有点欺骗,因为这不是离线模式切换的问题,而是与gradle文件混淆。我在这里采取了一些步骤来解决这个问题:
在Android Studio的“Gradle Scripts”部分下的build.gradle文件(以项目命名的文件)中,确保您当前的构建gradle类路径与当前版本的Android Studio相匹配。 Android Studio 2.3的一个示例:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.0'
}
}
同样在Gradle Scripts部分中,确保您的gradle-wrapper.properties文件引用了分发URL中的正确gradle文件。例如,对于gradle 3.3:
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
导航到C:\ Program Files \ Android \ Android Studio \ gradle并确保存在与您正在使用的gradle具有相同名称的gradle文件夹。在我的情况下,我确保有一个名为gradle-3.3的文件夹,其中包含一个名为gradle-3.3-all.zip的zip文件。在线查找此zip文件相对容易。
对我来说,当我这样做时,它还抱怨没有在.gradle文件夹中找到gradle-3.3-all.zip文件。我能够通过将gradle-3.3-all.zip文件添加到C:\ Users \ yourUser.gradle \ wrapper \ dists \ gradle-3.3-all \ 55gk2rcmfc6p2dg9u9ohc3hw9来解决此问题。我不确定文件夹是否对每个人都有相同的名称,但无论名称如何,这就是我去过的位置。如果所有这些都不起作用,我会尝试这些步骤的变体,并希望它适合你。
答案 1 :(得分:0)
失败的原因是它无法编译您包含的库之一。也许,尝试删除您怀疑的那个,然后再试一次。但大多数情况下,重建项目应解决依赖关系。
答案 2 :(得分:0)
我有相同的pb,设法解决它添加gradle.properties
systemProp.https.proxyHost=<my proxy hostname>
systemProp.https.proxyPort=<my proxy port>
我缺少HTTPS属性,只有HTTP设置,所以它有时工作,而不是用于https链接gradle。