[maven] IDEA-255308 simplify getCompilerLevel

GitOrigin-RevId: 84ec9226255dec4b3ca74fc64a8ae784e8564342
This commit is contained in:
Dmitry Kichinsky
2025-01-21 13:24:36 +00:00
committed by intellij-monorepo-bot
parent c2edde3020
commit 9d62ebad0b
@@ -395,24 +395,23 @@ object MavenImportUtil {
private val MavenProject.testSourceLevel: String?
get() {
return getCompilerLevel(true, "source")
return getCompilerLevel(true, "testSource")
}
private val MavenProject.testTargetLevel: String?
get() {
return getCompilerLevel(true, "target")
return getCompilerLevel(true, "testTarget")
}
private val MavenProject.testReleaseLevel: String?
get() {
return getCompilerLevel(true, "release")
return getCompilerLevel(true, "testRelease")
}
private fun MavenProject.getCompilerLevel(forTests: Boolean, level: String): String? {
val configs = if (forTests) testCompilerConfigs else compilerConfigs
val finalLevel = if (forTests) "test${level.replaceFirstChar { it.titlecase() }}" else level
val fallbackProperty = "maven.compiler.$finalLevel"
val levels = configs.mapNotNull { LanguageLevel.parse(findChildValueByPath(it, finalLevel)) }
val fallbackProperty = "maven.compiler.$level"
val levels = configs.mapNotNull { LanguageLevel.parse(findChildValueByPath(it, level)) }
val maxLevel = levels.maxWithOrNull(Comparator.naturalOrder())?.toJavaVersion()?.toFeatureString()
return maxLevel ?: properties.getProperty(fallbackProperty)
}