Dan*_*iel 17 android gradle android-studio build.gradle
我不得不重新安装我的系统,今天当我尝试与gradle同步时,我在Android Studio中收到此错误:
Warning: Unable to find optional library: org.apache.http.legacy
Run Code Online (Sandbox Code Playgroud)
我的项目是:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
}
}
allprojects {
repositories {
mavenCentral()
}
}
Run Code Online (Sandbox Code Playgroud)
我的模块是gradle:
apply plugin: 'android'
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion 23
buildToolsVersion '23.0.2'
defaultConfig {
minSdkVersion 16
targetSdkVersion 23
}
buildTypes {
release {
}
}
productFlavors {
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'
}
Run Code Online (Sandbox Code Playgroud)
要继续使用Apache HTTP API,必须首先在build.gradle文件中声明以下编译时依赖项:
Run Code Online (Sandbox Code Playgroud)android { useLibrary 'org.apache.http.legacy' }
我试过在这个帖子中提到的建议,但它们不起作用.与android studio 1.5和2预览相同的结果.
我怎样才能解决这个问题?
编辑:到目前为止我尝试过的事情:
将gradle类路径版本更改为1.3.0,1.3.1,1.5.0.
更改compileSdkVersion和targetSdkVersion从23.0.1,23.0.0,22.0.1至22同样的buildToolsVersion.
joh*_*o07 14
顶级build.gradle - /build.gradle
buildscript {
...
dependencies {
classpath 'com.android.tools.build:gradle:1.3.1'
}
}
Run Code Online (Sandbox Code Playgroud)
特定于模块的build.gradle - /app/build.gradle
android {
compileSdkVersion 23
buildToolsVersion "23.0.0"
useLibrary 'org.apache.http.legacy'
...
}
Run Code Online (Sandbox Code Playgroud)
将Android/Sdk/platforms/android-23/optional文件夹中的org.apache.http.legacy.jar添加到app/libs目录并同步项目
经过大量的工作,这个解决方案对我有用.**Studio\Android\sdk\platforms**这里再删除你的android-23和sdk manager更新api 23.**.它会解决你的问题.
在我的情况下,它没有optional.json用<sdk-path>\platforms\android-23\optional\,因为我在目录中缺少以下内容:
[
{
"name": "org.apache.http.legacy",
"jar": "org.apache.http.legacy.jar",
"manifest": false
}
]
Run Code Online (Sandbox Code Playgroud)
使用上面的内容创建一个新的JSON文件解决了我的问题.
| 归档时间: |
|
| 查看次数: |
36319 次 |
| 最近记录: |