Java Play2.3:对象控制器。映射不是值

Java Play2.3:对象控制器。映射不是值,java,playframework,playframework-2.0,Java,Playframework,Playframework 2.0,使用Playframework 2.3.6和jdk1.8构建java应用程序 尝试编译我的应用程序(使用“activator~run”)时,会引发以下错误: /website/conf/routes:12: object controllers.Map is not a value [error] GET /assets/*file controllers.Assets.at(path="/public", file) [error] one error found [erro

使用Playframework 2.3.6和jdk1.8构建java应用程序

尝试编译我的应用程序(使用“activator~run”)时,会引发以下错误:

/website/conf/routes:12: object controllers.Map is not a value
[error] GET     /assets/*file      controllers.Assets.at(path="/public", file)
[error] one error found
[error] (compile:compile) Compilation failed
我的路由文件如下所示:

# Home page
GET     /                       controllers.Application.home()
POST    /                       controllers.Application.resultsPage()

# Map static resources from the /public folder to the /assets URL path
GET     /assets/*file           controllers.Assets.at(path="/public", file)
我试着在整个应用程序中进行调整并搜索web,但没有找到一个基本问题。不确定从哪里开始,所以如果需要更多信息,请告诉我

更新:


我在互联网上找到的最接近于“信息”的信息是,当有人将Java映射函数导入scala文件时,会出现类似的“对象映射不是值”错误。当我在某些控制器中使用Map函数时,我看不出这与Scala有什么冲突,也看不出我导入Map时有什么错误。

我已经解决了这个问题,这与我对Scala Map函数的评论有关

该错误虽然指示routes文件中的一行,但实际上是由框架编译的反向路由(即routes_reverseRouting.scala)引发的。这里有一个映射,不管出于什么原因,它被读取为java映射而不是scala映射。为了临时解决这个问题,我将scala immutable map函数直接导入到ReverseAssets类中,并对其进行编译(不幸的是,这是一个bandaid解决方案,好像您需要重新编译routes文件,它会覆盖它)

我碰巧同时重构了我的控制器,问题就自行消失了