gradle Experiment 0.6.0-alpha1 中的 useLibrary 变成了啥?

Posted

技术标签:

【中文标题】gradle Experiment 0.6.0-alpha1 中的 useLibrary 变成了啥?【英文标题】:What has useLibrary changed to in gradle experimental 0.6.0-alpha1?gradle Experiment 0.6.0-alpha1 中的 useLibrary 变成了什么? 【发布时间】:2016-04-09 03:13:54 【问题描述】:

我正在尝试将我的 gradle.build 移植到 gradle experimental。我已经修改了我现有的 android 配置如下:

android 
    compileSdkVersion = compileSdk
    buildToolsVersion = buildTools
    useLibrary "org.apache.http.legacy"
    defaultConfig.with 
        minSdkVersion.apiLevel = 13
        targetSdkVersion.apiLevel = compileSdk
        versionName = fullVersion
        multiDexEnabled = true
     

但是,在编译时,我似乎得到了错误:

Error:(148, 1) 配置根项目时出现问题。> 异常 执行模型规则时抛出:model.android@build.gradle 行 145,第 1 列> 找不到用于参数的方法 useLibrary() [org.apache.http.legacy] 在根项目上

可能是因为我不确定useLibrary 被修改为什么。如果我将其注释掉,那么构建会持续很长时间,直到它无法从上述库中找到它可能期望的 http 方法。有人可以提供一些关于如何将这个库包含在 gradle Experiment 中的指示吗?

【问题讨论】:

可能,如果***.com/questions/34503431/…解决了我的问题,我去试试。 有什么想法吗?我无法解决这个问题。 【参考方案1】:

这应该可以在常规 gradle 和 gradle-experimental 中使用“org.apache.http.legacy”

删除 useLibrary 行:

useLibrary "org.apache.http.legacy"

添加到 gradle(模块):

dependencies 
    compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'

【讨论】:

【参考方案2】:

希望不会太晚。将 org.apache.http.legacy.jar 文件放在 libs 文件夹下... 并将其包含在您的依赖项中

dependencies 
    compile fileTree(dir: 'libs', include: ['*.jar'])

【讨论】:

以上是关于gradle Experiment 0.6.0-alpha1 中的 useLibrary 变成了啥?的主要内容,如果未能解决你的问题,请参考以下文章

Assembly Experiment5

Experiment 22 - Monte Carlo Simulation

Greedy:Physics Experiment(弹性碰撞模型)(POJ 3848)

Assembly Experiment3

20162314 Experiment 4 - Graph

experiment 3