0

我偶尔会看到这类异常。知道为什么会发生这种情况吗?我以为所有模板都是在服务器重新启动时以 prod 模式编译的,但是这个错误似乎是在请求路径上抛出的。

play.exceptions.TemplateCompilationException: unexpected token: } 
at play.templates.GroovyTemplate.compile(GroovyTemplate.java:174)
at play.templates.GroovyTemplate.internalRender(GroovyTemplate.java:195)
at play.templates.GroovyTemplate$ExecutableTemplate.invokeTag(GroovyTemplate.java:379)
at /app/views/base-user-layout.html.(line:89)
at play.templates.GroovyTemplate.internalRender(GroovyTemplate.java:232)
at play.templates.GroovyTemplate.internalRender(GroovyTemplate.java:267)
at play.templates.Template.render(Template.java:26)
at play.templates.GroovyTemplate.render(GroovyTemplate.java:187)
at play.mvc.results.RenderTemplate.<init>(RenderTemplate.java:24)
at play.mvc.Controller.renderTemplate(Controller.java:660)
at play.mvc.Controller.renderTemplate(Controller.java:640)
at play.mvc.Controller.render(Controller.java:695)
at controllers.UserController.profile(UserController.java:111)
at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:548)
at play.mvc.ActionInvoker.invoke(ActionInvoker.java:502)
at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:478)
at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:473)
at play.mvc.ActionInvoker.invoke(ActionInvoker.java:161)
at play.server.PlayHandler$NettyInvocation.execute(PlayHandler.java:257)
at play.Invoker$Invocation.run(Invoker.java:278)
at play.server.PlayHandler$NettyInvocation.run(PlayHandler.java:235)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:165)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
4

1 回答 1

2

在 Play 1.x 中,不编译模板。模板由 html 和 groovy 代码组成。groovy 代码在运行之前不会被解释。

然而,Play 2 已完全编译。

于 2012-05-30T20:02:29.257 回答