【发布时间】:2013-03-23 07:12:47
【问题描述】:
简单的问题,我有一个问题,在 ask 的结果上使用 mapTo 会导致编译器错误:
not found: value ClassTag
例如:
(job ? "Run").mapTo[Result]
^
我不明白为什么它需要一个 ClassTag 来进行演员表?如果我用 String 替换 Predef 中的标准类,就像在 (job ? "Run").mapTo[String] 中一样,编译OK。
当我在相关行的正上方定义类时会发生这种情况,如下所示:
class Result {}
(job ? "Run").mapTo[Result]
我仍然遇到同样的问题。
谢谢,杰森。
我还应该声明我正在使用 Scala 2.10.0 和 Akka 2.1.0(如果有区别的话)。
【问题讨论】:
-
到目前为止,您的代码看起来还不错 - 那么您可以发布您使用的导入吗?可能缺少导入。
-
我刚刚发现了一个comment,关于 Scala 2.10.0 的不同里程碑中的不兼容性。它建议
import reflect.ClassTag。如果这是最近才修复的问题,请尝试使用 Scala 2.10.1 和 Akka 2.1.1。 -
@michael_s,天才,谢谢你,添加
import reflect.ClassTag成功了!还没有尝试更新 Scala 版本,在开发周期的这个阶段有点不愿意更改包依赖项。如果您想发表您的评论作为答案,我可以将其标记为正确并给您一些状态。 -
OK - 出于文档目的添加了这一点 - 随意给予学分。虽然我认为这对于非常特殊的情况来说是一个问题。但无论如何 - 我知道编译器错误也不是很有帮助。