Merge pull request #6523 from eatkins/discover-main-class

Disable multiple main class warning w/ qualified key
This commit is contained in:
eugene yokota 2021-05-30 21:25:05 -04:00 committed by GitHub
commit a0f22213b5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 6 deletions

View File

@ -982,12 +982,17 @@ object Defaults extends BuildCommon {
selectMainClass := mainClass.value orElse askForMainClass(discoveredMainClasses.value),
run / mainClass := (run / selectMainClass).value,
mainClass := {
val logWarning = state.value.currentCommand
.flatMap(_.commandLine.split(" ").headOption.map(_.trim))
.fold(true) {
case "run" | "runMain" => false
case _ => true
}
val logWarning = state.value.currentCommand.forall(!_.commandLine.split(" ").exists {
case "run" | "runMain" => true
case r =>
r.split("/") match {
case Array(parts @ _*) =>
parts.lastOption match {
case Some("run" | "runMain") => true
case _ => false
}
}
})
pickMainClassOrWarn(discoveredMainClasses.value, streams.value.log, logWarning)
},
runMain := foregroundRunMainTask.evaluated,