配置.editorConfig禁用ktlint规则失效,运行ktlintCheck仍报错求助
问题:ktlint忽略.editorConfig中的禁用规则配置
我项目目录下有一个.editorConfig文件,已经在其中禁用了若干ktlint规则,但配置似乎被忽略了。
.editorConfig文件内容:
# top-most EditorConfig file root = true [*.{kt,kts}] ktlint_standard_no-wildcard-imports = disabled ktlint_standard_package-name = disabled
使用的ktlint Gradle插件版本:
id("org.jlleitschuh.gradle.ktlint") version "11.6.1"
运行ktlintCheck时的错误报告:
<error line="1" column="1" severity="error" message="Package name must not contain underscore" source="package-name" /> <error line="20" column="1" severity="error" message="Wildcard import" source="no-wildcard-imports" />
请问有解决思路吗?
解决思路
- 修正文件名大小写:确保文件名为
.editorconfig(全小写),而非.editorConfig。多数操作系统对文件名大小写敏感,这是常见的配置不生效原因。 - 启用EditorConfig支持:在项目的
build.gradle(或build.gradle.kts)中明确开启插件的EditorConfig读取功能:ktlint { enableEditorConfig = true } - 尝试旧版规则禁用格式:部分旧版本插件对新格式的规则禁用支持不佳,可改用
disabled_rules字段批量禁用:[*.{kt,kts}] disabled_rules = no-wildcard-imports, package-name - 清理构建缓存:执行
./gradlew clean ktlintCheck --no-build-cache,避免缓存导致配置未更新。 - 确认文件位置:确保
.editorconfig放置在项目根目录(与settings.gradle同级),插件默认仅读取根目录的配置文件。
内容的提问来源于stack exchange,提问作者Nininea
相关产品推荐
相关产品推荐

