Gradle自定义类型:默认任务“错误:找不到符号”

时间:2020-06-05 12:22:21

标签: java gradle

我想用JAVA创建一个SimpleTask Gradle。但是,由于找不到“ import org.gradle.api.DefaultTask”,因此无法编译我的项目。 GradleVersion:6.3

正如文档所述,我在root / buildSrc / src / main / java / SimpleTask.java中创建一个类

使用此代码,我有一个:“错误:找不到符号”符号:DefaultTask类。

import org.gradle.api.DefaultTask;
import org.gradle.api.tasks.TaskAction;

public class SimpleTask extends DefaultTask {

}

我尝试添加依赖项(但效果相同)

dependencies {
    // https://mvnrepository.com/artifact/org.gradle/api
    implementation group: 'org.gradle', name: 'api', version: '1.0'

3 个答案:

答案 0 :(得分:1)

我不熟悉这种依赖关系,但是如果存在的话,那就是五年前的Gradle 1.0。那绝对不是你想要的。

我不认为官方Gradle API是作为依赖发布的。但是,您可以使用DependencyHandler.gradleApi()这样的方法来声明对当前版本的Gradle API的依赖关系:

dependencies {
   implementation gradleApi()
}

答案 1 :(得分:1)

不需要添加依赖项。 实际上,我已经更新了intelliJ和gradle / java插件。当智能扫描一个buildSrc / src / main / java目录时,它将目录转换为源文件夹。和编译都可以。

答案 2 :(得分:0)

我在这里找到了一个不错的教程:https://www.jrebel.com/blog/using-buildsrc-custom-logic-gradle-builds

我的问题是我在buildSrc中用intelliJ定义了一个“源根”。并导致编译错误。