refactor compiler options (#2253)

* refactor compiler options

* move jdk9 test into standard test source

* Fix scalacOptions flag from '--release' to '-release'

* whitespace

* unused import

* Update IterablePublisherViaJavaFlowPublisherTest.scala

* Update Jdk9.scala
This commit is contained in:
PJ Fanning 2025-09-21 22:12:19 +01:00 committed by GitHub
parent 92ca0314c0
commit 183fda795f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 9 additions and 8 deletions

View file

@ -17,9 +17,8 @@ import sbt._
object Jdk9 extends AutoPlugin {
import JdkOptions.JavaVersion._
// The version 17 is special for any Java versions >= 17
// and the version 21 is special for any Java versions >= 21
private val supportedJavaLTSVersions = List("17", "21")
// The version 21 is special for any Java versions >= 21
private val supportedJavaLTSVersions = List("21")
lazy val CompileJdk9 = config("CompileJdk9").extend(Compile)

View file

@ -19,12 +19,12 @@ import sbt.librarymanagement.VersionNumber
object JdkOptions extends AutoPlugin {
lazy val specificationVersion: String = sys.props("java.specification.version")
object JavaVersion {
val majorVersion: Int = java.lang.Runtime.version().feature()
}
val targetJavaVersion = "17"
lazy val versionSpecificJavaOptions =
// for virtual threads
"--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED" ::
@ -35,7 +35,9 @@ object JdkOptions extends AutoPlugin {
"--add-opens=java.base/java.nio=ALL-UNNAMED" :: Nil
def targetJdkScalacOptions(scalaVersion: String): Seq[String] =
Seq(if (scalaVersion.startsWith("3.")) "-Xtarget:17" else "release:17")
Seq("-release", JdkOptions.targetJavaVersion) ++ {
if (scalaVersion.startsWith("3.")) Seq(s"-Xtarget:${targetJavaVersion}") else Seq.empty
}
val targetJdkJavacOptions = Seq("-source", "17", "-target", "17")
val targetJdkJavacOptions = Seq("--release", targetJavaVersion)
}

View file

@ -17,7 +17,7 @@ import java.util.concurrent.{ Flow => JavaFlow }
import org.apache.pekko
import pekko.NotUsed
import pekko.stream.scaladsl.{ Flow, JavaFlowSupport, Sink, Source }
import pekko.stream.scaladsl.{ JavaFlowSupport, Sink, Source }
import org.reactivestreams._
class IterablePublisherViaJavaFlowPublisherTest extends PekkoPublisherVerification[Int] {