Scala 3中如何配置使非穷尽模式匹配触发编译失败?
Scala 3 中非穷尽模式匹配触发编译失败的配置方法
问题背景
在Scala 2.13中,可通过编译器选项 -Wconf:cat=other-match-analysis:error 将非穷尽模式匹配的警告转为编译错误,但该配置在Scala 3中无法识别,会触发如下报错:
Failed to parse
-Wconfconfiguration: cat=other-match-analysis:error
解决方案
Scala 3调整了警告分类体系,针对非穷尽模式匹配需使用专属的警告类别 non-exhaustive-patterns,具体配置方式如下:
- 直接添加编译器选项:
-Wconf:cat=non-exhaustive-patterns:error - 若使用SBT构建,在
build.sbt中配置:scalacOptions += "-Wconf:cat=non-exhaustive-patterns:error"
说明
该配置仅会将非穷尽模式匹配的警告升级为编译错误,不会影响其他类型的警告,保持了与Scala 2.13一致的粒度控制。
内容的提问来源于stack exchange,提问作者alessandro candolini
相关产品推荐
相关产品推荐

