小编Cha*_*ieQ的帖子

SBT不会重新编写用java文件编写的junit测试用例

我用SBT 0.11.2创建了一个Scala/Java混合项目.我的JUnit测试配置是

resolvers += "twitter.com" at "http://maven.twttr.com/"

seq(com.github.retronym.SbtOneJar.oneJarSettings: _*)

libraryDependencies += "com.novocode" % "junit-interface" % "0.10-M2" % "test"
Run Code Online (Sandbox Code Playgroud)

当我在Scala中编写JUnit测试用例时@Test,一切顺利.但是当我编写Java JUnit测试用例,然后test在sbt中运行时,Java JUnit测试无法重新编译.仅执行用Scala编写的测试用例.

如何让sbt同时识别我的Java和Scala测试用例?

testing junit scala sbt

5
推荐指数
2
解决办法
1930
查看次数

为什么在Scala中需要隐式参数?

我是scala的新手,今天,当我遇到此akka 源代码时,我感到困惑:

def traverse[A, B](in: JIterable[A], fn: JFunc[A, Future[B]], 
      executor: ExecutionContext): Future[JIterable[B]] = {
    implicit val d = executor
    scala.collection.JavaConversions.iterableAsScalaIterable(in).foldLeft(
        Future(new JLinkedList[B]())) { (fr, a) ?
      val fb = fn(a)
      for (r ? fr; b ? fb) yield { r add b; r }
    }
  }
Run Code Online (Sandbox Code Playgroud)

为什么有意使用隐式参数编写代码?为什么不能这样写:

scala.collection.JavaConversions.iterableAsScalaIterable(in).foldLeft(
  Future(new JLinkedList[B](),executor))
Run Code Online (Sandbox Code Playgroud)

是否不对新的隐式变量进行标量d?这样做有什么好处吗?目前,我仅发现隐式会增加代码的歧义。

scala akka

4
推荐指数
2
解决办法
395
查看次数

标签 统计

scala ×2

akka ×1

junit ×1

sbt ×1

testing ×1