问题是 Controller 没有看到我想使用的模板:
[etl_admin] $ compile [info] Compiling 3 Scala sources and 4 Java sources to D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\target\scala-2.9.1\classes... [error] D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\app\controllers\EtlWorkflowSeqNodeController.java:7: error: package views.html.etlworkflowseqnode does not exist [error] import views.html.etlworkflowseqnode.list; [error]
^ [error] D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\app\controllers\EtlWorkflowSeqNodeController.java:14: error: cannot find symbol[error] list.render(EtlWorkflowSeqNode.findTree(jobId)) [error] ^ [error] symbol: variable list [error]
location: class EtlWorkflowSeqNodeController [error] 2 errors [error] {file:/D:/ECLIPSE_WORKSPACES/play2_apps/etl_admin/}etl_admin/compile:compile: javac returned nonzero exit code [error] Total time: 7 s, completed 05.06.2012 17:14:44
Controller 代码如下:
package controllers;
import play.mvc.Controller;
import play.mvc.Result;
import models.EtlWorkflowSeqNode;
import play.db.jpa.Transactional;
import views.html.etlworkflowseqnode.list; /*LINE #7, Eclipse really tells that there is no such package*/
public class EtlWorkflowSeqNodeController extends Controller {
@Transactional
public static Result list(Integer jobId) {
return ok(
list.render(EtlWorkflowSeqNode.findTree(jobId))
);
}
}
我在项目树中附上了一张图片。有这样的包,有名为“列表”的模板。 我做错了什么
最佳答案
天哪,这个问题太简单了! *classes_managed*(此文件夹保存已编译的 scala 模板)未使用新添加的模板进行更新。我昨天确实尝试调用 play compile,但没有用。新包中的新模板未编译。 今天早上我调用play clean compile aaand...万岁!我确实得到了编译模板和丢失包的问题消失了(不要忘记刷新 Eclipse 项目,强制它从文件系统更新现有的项目结构。它喜欢缓存所有内容。)
抱歉打扰了,好像我在阅读文档时没有专心:(
关于java - play2 framework 我的模板没见过。 : package views. html不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10910215/