错误:在一些lambda表达式中非法启动表达式

时间:2015-12-16 09:21:56

标签: java-8 playframework-2.4 typesafe-activator

我在java中有以下功能:

private static Predicate<SomeObject> isNotCancelled() {
    return i -> !i.getStatus().equals("Cancelled");
}

使用以下激活器命令时:compile,run,test或testOnly。一切正常,没有编译错误,应用程序正如我预期的那样工作。

但是当我执行激活器testProd或激活器阶段时,会发生以下错误:

[error] /path_to_class/SomeClass.java:34: error: illegal start of expression
[error]         return i -> !i.getStatus().equals("Cancelled")
[error]                   ^

有人可以帮我理解为什么会这样吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我通过将activator,sbt和play版本升级到:

解决了这个问题
  • activator-dist-1.3.7(我以前的版本是1.3.6)
  • sbt 0.13.9(我之前的版本是0.13.8)
  • 播放2.4.4(我以前的版本是2.4.4)