私は遊びを持っています!2つのアプリケーションとモデル間で再利用されるいくつかの機能。models
次の例のように、パッケージオブジェクト内に配置することを考えました
import java.util.Date
package object models {
case class RichDate(d: Date) {
def timestamp: Long = d.getTime / 1000
}
implicit def enrich(d: Date): RichDate = new RichDate(d)
}
モデルのどこにでも日付フィールドがあるので、書くことができますmyDate.timestamp
。ù
これはコンパイルされ、単体テストでも機能します。ただし、何らかの理由で、実際のアプリケーションを実行すると、実行例外が発生します。[NoSuchMethodError: models.package$.enrich(Ljava/util/Date;)Lmodels/package$RichDate;]
上記がPlayで機能しない理由はありますか?アプリケーション、有効なScalaでありながら?