Android studio 如何在运行";时清除特定的gradle缓存文件;清洁工程;指挥部?
我在项目的build.gradle文件中添加了以下任务:Android studio 如何在运行";时清除特定的gradle缓存文件;清洁工程;指挥部?,android-studio,gradle,android-gradle-plugin,Android Studio,Gradle,Android Gradle Plugin,我在项目的build.gradle文件中添加了以下任务: task('clearLibCache', type: Delete, group: 'MyGroup', description: "Deletes any cached artifacts with the domain of com.test in the Gradle or Maven2 cache directories.") << { def props = project.properti
task('clearLibCache', type: Delete, group: 'MyGroup',
description: "Deletes any cached artifacts with the domain of com.test in the Gradle or Maven2 cache directories.") << {
def props = project.properties
def userHome = System.getProperty('user.home')
def domain = props['domain'] ?: 'com.test'
def slashyDomain = domain.replaceAll(/\./, '/')
file("${userHome}/.gradle/caches").eachFile { cacheFile ->
if (cacheFile.name =~ "^$domain|^resolved-$domain") delete cacheFile.path
}
delete "${userHome}/.m2/repository/$slashyDomain"
}
task('clearLibCache',类型:Delete,组:'MyGroup',
description:“删除Gradle或Maven2缓存目录中具有com.test域的任何缓存工件。”)
如果(cacheFile.name=~“^$domain | ^resolved-$domain”)删除cacheFile.path
}
删除“${userHome}/.m2/repository/$slashyDomain”
}
我希望在点击“cleanproject”菜单时执行此任务,并且仅在这种情况下执行
如何做到这一点?引擎盖下的“Clean project”菜单项似乎可以做一些事情(根据您单击Gradle控制台窗口时的输出):
- gradle clean,相当于调用
/gradlew clean
- 生成调试构建的源代码和依赖项,如果需要,包括一个可模仿的Android源代码jar
build.gradle
中添加行clean.dependsOn clearLibCache
来实现