当前位置: 首页 > 知识库问答 >
问题:

如何将特定资源排除在AAR损耗之外?

景靖琪
2023-03-14

那么,有没有比这更简单的东西可以用于Gradle的当前版本的Android插件呢?

共有1个答案

桂浩言
2023-03-14

编辑:

为你写了高级分级任务:

final List<String> exclusions = [];

Dependency.metaClass.exclude = { String[] currentExclusions ->
    currentExclusions.each {
        exclusions.add("${getGroup()}/${getName()}/${getVersion()}/${it}")
    }
    return thisObject
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile ('com.android.support:appcompat-v7:20.+')
    debugCompile ('com.squareup.leakcanary:leakcanary-android:1.3.1')
            .exclude("res/values-v21/values-v21.xml")
    releaseCompile ('com.squareup.leakcanary:leakcanary-android-no-op:1.3.1')
}

tasks.create("excludeTask") << {
    exclusions.each {
        File file = file("${buildDir}/intermediates/exploded-aar/${it}")
        println("Excluding file " + file)
        if (file.exists()) {
            file.delete();
        }
    }
}

tasks.whenTaskAdded({
    if (it.name.matches(/^process.*Resources$/)) {
        it.dependsOn excludeTask
    }
})

现在可以对每个依赖项使用.exclude()方法,提供要从指定依赖项中排除的路径列表。此外,还可以堆栈.exclude()方法调用。

 类似资料:
  • 我正在我的GTX 1060 6gb上使用Python中的Tensorflow 1.2训练LSTM。 在每个时代,我用这种方法保存模型: 一切正常,但在九个时代之后,当我试图用这种方法保存模型时,我得到了ResourceExhaustedError。 我在培训期间检查了我的资源,但没有耗尽任何资源。 我得到的错误如下: 2017-06-29 12:43:02.865845: W tenstorflo

  • 20.2.1 排除的资源 某些资源没有必要要在更改时触发重启。例如,Thymeleaf模板可以就地编辑,默认情况下,更改/META-INF/maven、/META-INF/resources、/resources、/static、/public或/templates中的资源不会触发重启,但会触发实时重新加载。如果您想自定义哪些资源改动而不会触发重启,可以使用spring.devtools.rest

  • 本文向大家介绍如何确定在Oracle中消耗更多资源的SQL?,包括了如何确定在Oracle中消耗更多资源的SQL?的使用技巧和注意事项,需要的朋友参考一下 问题: 您要标识消耗Oracle中更多资源的SQL语句。 解 “ V $SQLSTATS”视图显示最近执行的SQL语句的性能统计信息,也可以使用“ V $SQL”和“ V $SQLAREA”报告SQL资源使用情况。  “ V $SQLSTATS

  • 在Jenkins中,当构建失败时,它将从SCM获取罪犯列表,并使用“可编辑电子邮件通知”插件向罪犯发送电子邮件。我的问题是我想把一些用户排除在邮件列表之外。因为他们和那件事毫无关系。 我在詹金斯发现了“被排除的接受者”-

  • gradle:如何排除重复的资源文件?例如。, META-INF/foo。在.././.下的xml/src/main/resources与src/main/resources/META-INF/foo同名。xml。 还尝试了: foo.xml文件都被排除在外。

  • 问题内容: 我要在一个图形中制作一系列20个图(不是子图)。我希望图例在框外。同时,由于图形尺寸变小,我不想更改轴。请帮助我进行以下查询: 我想将图例框保留在绘图区域之外。(我希望图例位于绘图区域的右侧)。 无论如何,我是否减小了图例框内文本的字体大小,以使图例框的大小变小。 问题答案: 有很多方法可以做你想要的。要添加和所说的内容,可以使用关键字参数将图例部分地放置在轴外and/or 减小字体大