gpt4 book ai didi

android - 如何忽略Android build.gradle中的隐藏目录

转载 作者:搜寻专家 更新时间:2023-11-01 08:03:37 31 4
gpt4 key购买 nike

我最近更新了一个现有的 Android 项目以使用 Android Studio,但无法构建它:

Execution failed for task ':mergeDebugResources'.
> Index: 0

经过一些试验后,我发现它在我们的源代码管理的隐藏目录 .arch-ids 上窒息,它存在于每个文件夹中。

我试过使用 exclude 关键字来操作 build.gradle,但没有成功:

sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java {
srcDirs = ['src']
exclude '**/.arch-ids/*'
}
resources {
srcDirs 'src'
exclude '**/.arch-ids/*'
}
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res {
srcDirs = ['res']
}
assets.srcDirs = ['assets']
}

instrumentTest.setRoot('tests')
}

'res' 部分目前似乎是罪魁祸首,但它不支持 'exclude' 关键字。

最佳答案

你可以尝试这样的事情:

android {
...
sourceSets {
main {
...
res.srcDirs = ['build/filtered_resources']
...
}
...
}

然后任务依赖使用过滤资源复制:

task __filteredResources(type:Copy) {
from('res/') {
exclude '**/.arch-ids/*'
}
into 'build/filtered_resources'
includeEmptyDirs = true
}

tasks.whenTaskAdded { task ->
if (task.name == 'generateBuildConfig') {
task.dependsOn __filteredResources
}
}

关于android - 如何忽略Android build.gradle中的隐藏目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17454346/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com