You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AddOrUpdateAnnotationAttribute时如何排除build.gradle被解析?

问题原因

OpenRewrite 默认会扫描项目内的所有源文件(包括build.gradle这类构建配置文件),这是因为它的核心框架设计支持多语言重构场景。即便你仅引入了rewrite-java依赖,默认的源文件扫描范围并不会自动限制为Java文件,因此会尝试解析build.gradle,但该文件属于Groovy/Kotlin语言范畴,缺少对应解析依赖时就会触发报错。

解决方法

方法1:限定仅处理Java源文件

在Gradle配置中明确指定Rewrite仅扫描Java源码目录,修改你的init.gradle或项目build.gradle:

rewrite {
    activeRecipe("org.openrewrite.java.AddOrUpdateAnnotationAttribute")
    sources {
        java {
            srcDirs = ["src/main/java", "src/test/java"]
        }
    }
}

配置后,Rewrite只会处理指定路径下的Java文件,不再扫描build.gradle。

方法2:直接排除特定文件

如果需要保留其他源类型扫描,仅排除build.gradle,可添加排除规则:

rewrite {
    activeRecipe("org.openrewrite.java.AddOrUpdateAnnotationAttribute")
    sources {
        all {
            exclude("**/build.gradle")
        }
    }
}

内容的提问来源于stack exchange,提问作者MGK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 08:30:41