所以,我正在尝试使用Eclipse进行Play 2。我创建一个新项目,编译它,运行eclipsify并将其导入Eclipse。到目前为止一切都很好。
我遇到的问题是,当我在Scala模板中进行更改时,我的Java控制器无法看到它,并且Eclipse将代码标记为无效。例如:
我在索引模板中添加了第二个参数
@(message: String, nesto:Integer)
当我尝试从控制器渲染文件时,以下行显示错误,因为Eclipse仍然认为index.render需要一个String。
return ok(index.render("Your new application is ready.",2));
我在Eclipse中打开工作区刷新,然后播放eclipsify会自动将classes_managed目录添加到构建路径。
答案 0 :(得分:6)
我做了以下事情:
classes_managed
生成的play eclipsify
目录,并使用“添加外部类文件夹”手动添加了该目录。然后它对我有用。
似乎eclipsify
命令存在错误。
答案 1 :(得分:5)
诀窍是让Play在后台自动构建(模板文件目前不是由Eclipse构建的,因此您需要Play来为您翻译这些文件)。这里都详细解释了:
[死链接] http://scala-ide.org/docs/tutorials/play20scalaide20/index.html
[尝试这个] http://scala-ide.org/docs/tutorials/play/index.html#installing-the-scala-ide-play2-plug-in
答案 2 :(得分:4)
答案 3 :(得分:1)
对于使用Eclipse Mars的Java Play Framework v2.4.6(激活器v1.3.7):
您是否尝试过此@(message: String, nesto:Integer)
而不是@(message: String)(nesto: Integer)
?
这样你就不会有#34;无法解决错误"使用index.render()
,您可以将此<classpathentry kind="lib" path="target/scala-2.11/classes"/>
添加到.classpath
或右键点击您的项目 - &gt;构建路径 - &gt;配置构建路径 - &gt;添加类文件夹并使其指向target/scala-2.11/classes
。