diff --git a/build.sbt b/build.sbt index 9570bd29b..765505308 100644 --- a/build.sbt +++ b/build.sbt @@ -107,6 +107,20 @@ lazy val sbtRoot: Project = (project in file(".")) .settings( buildLevelSettings, minimalSettings, + onLoadMessage := { + """ __ __ + | _____/ /_ / /_ + | / ___/ __ \/ __/ + | (__ ) /_/ / /_ + | /____/_.___/\__/ + |Welcome to the build for sbt. + |""".stripMargin + + (if (sys.props("java.specification.version") != "1.8") + s"""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + | Java versions is ${sys.props("java.specification.version")}. We recommend 1.8. + |!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""".stripMargin + else "") + }, Util.baseScalacOptions, Docs.settings, Sxr.settings, @@ -545,6 +559,12 @@ lazy val mainProj = (project in file("main")) .settings( testedBaseSettings, name := "Main", + checkPluginCross := { + val sv = scalaVersion.value + val xs = IO.readLines(baseDirectory.value / "src" / "main" / "scala" / "sbt" / "PluginCross.scala") + if (xs exists { s => s.contains(s""""$sv"""") }) () + else sys.error("PluginCross.scala does not match up with the scalaVersion " + sv) + }, libraryDependencies ++= scalaXml.value ++ Seq(launcherInterface) ++ log4jDependencies ++ Seq(scalaCacheCaffeine), managedSourceDirectories in Compile += baseDirectory.value / "src" / "main" / "contraband-scala", diff --git a/main/src/main/scala/sbt/PluginCross.scala b/main/src/main/scala/sbt/PluginCross.scala index fca253cc1..ef6ca4a44 100644 --- a/main/src/main/scala/sbt/PluginCross.scala +++ b/main/src/main/scala/sbt/PluginCross.scala @@ -96,7 +96,7 @@ private[sbt] object PluginCross { VersionNumber(sv) match { case VersionNumber(Seq(0, 12, _*), _, _) => "2.9.2" case VersionNumber(Seq(0, 13, _*), _, _) => "2.10.7" - case VersionNumber(Seq(1, 0, _*), _, _) => "2.12.6" + case VersionNumber(Seq(1, 0, _*), _, _) => "2.12.7" case _ => sys.error(s"Unsupported sbt binary version: $sv") } } diff --git a/project/Dependencies.scala b/project/Dependencies.scala index 91ab0bde8..4c2873c55 100644 --- a/project/Dependencies.scala +++ b/project/Dependencies.scala @@ -5,6 +5,7 @@ import sbt.contraband.ContrabandPlugin.autoImport._ object Dependencies { // WARNING: Please Scala update versions in PluginCross.scala too val scala212 = "2.12.7" + lazy val checkPluginCross = settingKey[Unit]("Make sure scalaVersion match up") val baseScalaVersion = scala212 // sbt modules