播放框架教程:无法解析符号“路线”

Posted

技术标签:

【中文标题】播放框架教程:无法解析符号“路线”【英文标题】:Play Framework tutorial: Cannot resolve symbol 'routes' 【发布时间】:2014-04-12 10:05:20 【问题描述】:

我正在关注play tutorial,我被困在大约 9 分钟。路由文件没有得到解决我做了同样的事情,如教程中所示,但仍然不起作用。

package controllers;
import models.Bar;
import play.core.Router;
import play.data.Form;
import play.mvc;
import play.*;
import play.Routes;
import views.html.indes;
public class Application extends Controller 

public static Result index() 
    return ok(index.render("Hello"));


public static Result addBar()
    Bar bar = Form.form(Bar.class).bindFromRequest().get();
    bar.save();
    return redirect(routes)
    


【问题讨论】:

共享路由文件、正在访问的 URL 以及您在日志/控制台中看到的内容 另外,分享您的 index.scala.html 文件(除非您使用不同的模板机制) 我无法解析路线。谁能尽快帮帮我? routes file # Routes # 这个文件定义了所有的应用路由(优先级高的路由优先) # ~~~~ # 主页 GET /controllers.Application.index() POST /bars controllers.Application.addBar () # 将 /public 文件夹中的静态资源映射到 /assets URL 路径 GET /assets/*file controllers.Assets.at(path="/public", file) 要访问的 URL 是 localhost:/9000;在日志中它说它无法解析路由 【参考方案1】:
Project Structure -> Modules -> Dependencies -> + -> JAR or directories -> target/scala-#.##/classes_managed

将此目录标记为 Sources Root/Generated Sources Root 对我不起作用,正如其他一些 S/O 帖子中提到的那样

【讨论】:

这对我有用。感谢您的具体说明。【参考方案2】:

它本身就是 localhost:9000。我尝试再次运行服务器。 实际上,代码无法识别 conf 下的路由文件。我只是想复制教程中显示的任何内容,但它没有发生!

【讨论】:

【参考方案3】:

这些步骤对我有用:

    将以下行添加到您的 plugins.sbt 文件中: addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.6.0") 项目文件夹下。 从您的项目中删除 .idea 文件夹。 从 cmd sbt gen-idea 运行命令 在 intelliJ 中再次导入项目

【讨论】:

【参考方案4】:

每次更改模块的 scala 版本时,我都会遇到此问题。解决这个问题的最简单方法是:

关闭 Intellij 打开控制台并运行sbt clean compile 再次打开 IDE,它应该可以工作了

【讨论】:

【参考方案5】:

根据您提供的信息,您需要使用以下网址:

localhost:9000  

不是本地主机:/9000。上面的 URL 应该触发 index 方法(在应用程序控制器内)被调用。根据您共享的实现,它将生成用于呈现视图的索引模板(带有 200 HTTP 响应)。确保在视图目录中有 index.scala.template。

【讨论】:

以上是关于播放框架教程:无法解析符号“路线”的主要内容,如果未能解决你的问题,请参考以下文章

播放框架 sorm intellij - 无法解析符号 sorm

无法使用 intellij 14 解析路由文件中的符号并播放框架 2.4 reactivemongo

无法解析符号路径

Intellij IDEA 无法使用 Play 框架解析符号

Ninja 框架无法将表单解析为 Java 对象

无法解析的外部符号 C++