以下のエラーと長いStacktraceが出力されてどうしたものかと思ったが、ここで示されているList内にパッケージ内のどこでエラーが出ているのかが書いてあったおかげで救われました。
[error] (compile:compileIncremental) java.lang.IllegalArgumentException: Could not find proxy for model: models.MyModel in List(value model, method apply, <$anon: Function1>, method myMethod, class MyClass, package myPackage, package services, package <root>) (currentOwner= value x$11 )
List(value model, method apply, <$anon: Function1>, method myMethod, class MyClass, package myPackage, package services, package <root>)
とあるので、末尾から逆に辿って _root_.services.myPackage.MyClass
に定義されているmyMethod内の引数一つの無名関数のどこかにおかしいところがあります。
原因は myMethod
内で使用していた Option
の fold[B](ifEmpty: => B)(f: A => B)
について、第一引数 ifEmpty
を指定し忘れていたからでした。
改行して中にコメントを追加していたのでIDEも検知できなかったようです(?)。
foreach
するなり、 for
内包表記で処理するという対処法があります。また、Unitを返すべき場面では ()
を追加するという方法もあります。