如何使用 sbt 排除 java 源目录?

How to exclude the java source directory using sbt?

我必须在 build.sbt 文件上写些什么才能将项目中的 java 文件从编译和生成 .class 文件中排除?我正在尝试使用 the answer of this question,但它似乎太旧了,并且 sbt.version = 1.4.7 的情况发生了变化。

我试过这样做:

unmanagedSourceDirectories in Compile := { (scalaSource in Compile)( _ => Nil) }

但我发现类型不匹配

found   : sbt.Def.Initialize[scala.collection.immutable.Nil.type]
required: Seq[java.io.File]
unmanagedSourceDirectories in Compile := { (scalaSource in Compile)( _ => Nil) }
^
[error] Type error in expression

使用

Compile / unmanagedSourceDirectories := (Compile / scalaSource).value :: Nil
Test / unmanagedSourceDirectories := (Test / scalaSource).value :: Nil

如下所示:https://www.scala-sbt.org/1.x/docs/Java-Sources.html#Java+Sources