本帖最后由 凋灵兔子 于 2019-5-3 15:29 编辑
我发现一个奇怪的现象: 每次我遇到解决不了的问题, 百度谷歌全都跪了, 就是找不到解决办法, 但是只要我张嘴问, 就算没有回答也会在能在几分钟之内突然灵光一现, 自行找到解决办法....= =, 这种事情已经发生n次了...该不会有魔法...这里就是调用方式不对, 改成 project.delete('haha')就行了....锭大家领了吧(补充一下: 还是别领了吧...领了的同学全被发卡了......)~
请问各位 dalao, 在 build.gradle 中添加如下代码:
复制代码调用 delete 删掉文件夹, 但是运行时提示: Could not find method delete() for arguments [haha] on task ':t2' of type org.gradle.api.DefaultTask
而我已经添加了 gradleApi 的依赖:
复制代码
.....新人刚开始用这个...求各位 dalao 帮帮忙...QAQ
差点导致吞锭.....
我发现一个奇怪的现象: 每次我遇到解决不了的问题, 百度谷歌全都跪了, 就是找不到解决办法, 但是只要我张嘴问, 就算没有回答也会在能在几分钟之内突然灵光一现, 自行找到解决办法....= =, 这种事情已经发生n次了...该不会有魔法...这里就是调用方式不对, 改成 project.delete('haha')就行了....锭大家领了吧(补充一下: 还是别领了吧...领了的同学全被发卡了......)~
请问各位 dalao, 在 build.gradle 中添加如下代码:
- class PluginDemo implements Plugin<Project> {
- @Override
- void apply(Project project) {
- def groupName = 'test'
- project.task('test') {
- group=groupName
- delete 'haha'
- }
- }
- }
- apply plugin: PluginDemo
而我已经添加了 gradleApi 的依赖:
- dependencies {
- testCompile group: 'junit', name: 'junit', version: '4.12'
- testCompile localGroovy()
- testCompile gradleApi()
- }
.....新人刚开始用这个...求各位 dalao 帮帮忙...QAQ
差点导致吞锭.....
那我就……不客气了?丝毫不懂编程的萌新路过帮顶
(看了版规好像没事)
- project.delete('haha')
调用方式不对可还行……=▽=
1.delete方法是Project的实例project所拥有的。
https://docs.gradle.org/current/ ... ava.lang.Object...-
2.project.task后面跟随的大括号可以说是闭包,但作为JVM语言就需要遵循Java虚拟机的规范,JVM可没有闭包一说,本质上是一个实现了Action,这里面直接执行的方法是在Task下面的,而不是Project下面的。
https://docs.gradle.org/current/ ... .gradle.api.Action-
综上,需要使用project.delect而不是delete
(合格的拿金锭姿势)
https://docs.gradle.org/current/ ... ava.lang.Object...-
2.project.task后面跟随的大括号可以说是闭包,但作为JVM语言就需要遵循Java虚拟机的规范,JVM可没有闭包一说,本质上是一个实现了Action,这里面直接执行的方法是在Task下面的,而不是Project下面的。
https://docs.gradle.org/current/ ... .gradle.api.Action-
综上,需要使用project.delect而不是delete
(合格的拿金锭姿势)
感谢大大的教程
万分感谢大佬教程
