如何告诉Scala使用正确的Java构造函数?

时间:2011-10-08 22:38:22

标签: scala

我正在尝试在Scala中使用JodaTime。所以我做了

import org.joda.time.DateTime

val dt = new DateTime(2011, 10, 8, 18, 30) // try to set to 6:30 pm, Oct 8, 2011

不幸的是,Scala认为我正在尝试使用DateTime(Object)构造函数而不是5 int构造函数,并且毫不奇怪,Tuple5不是JodaTime所期望的那种对象。

如何告诉Scala使用5-int构造函数?

托德

1 个答案:

答案 0 :(得分:8)

您可能正在使用较旧版本的JodaTime。在JodaTime 2.0之前,您尝试使用的构造函数不存在。

较旧版本的JodaTime没有5个参数。由于Scala找不到一个,它假设你试图传入一个与Object ctor匹配的元组。您可以在this excellent answer中找到更多详细信息。