Java 播放框架获取文件的最后修改日期

Java 播放框架获取文件的最后修改日期,java,file-io,playframework,Java,File Io,Playframework,PlayFramework应用程序,footer.html文件: %{ file = new File("footer.html"); path = file.getCanonicalPath(); lm = file.lastModified(); // date = new Date(lm); }% <span> Last update: ${lm} </span> %{ file=新文件(“footer.html”); path=file.getCano

PlayFramework应用程序,footer.html文件:

%{
 file = new File("footer.html");
 path = file.getCanonicalPath();
 lm = file.lastModified();
 // date = new Date(lm);
}%

<span> Last update: ${lm} </span>
%{
file=新文件(“footer.html”);
path=file.getCanonicalPath();
lm=file.lastModified();
//日期=新日期(lm);
}%
上次更新:${lm}
这里我有正确的路径,所以footer.html是存在的

但是lm为0,即1970年。。但现在是2011年


问题是:为什么?它是否与安全管理器或安全相关?

是否可以检查
${file.exists()}

我认为您的文件“footer.html”不存在,因为play将使用编译视图(通常在temp/bytecode/DEV文件夹中),而在编译视图中,此文件不存在


即使更改为编译后的文件名,它也不会在服务器上工作,因为生成上文件的修改日期将是生成的日期。

它存在是因为我在执行file.getCanonicalPath()时使用了right PATH变量;等等,是的,你是对的:这是假的。但是我怎么可能有正确的路径呢?我已经尝试了
新文件(“app/views/Application/index.html”)并且它确实说出了正确的时间。您的canonicalPath上可能缺少某些内容。是的,现在它正在工作,但只有“new File(“footer.html”)”的事件将返回该路径:app/views/tags/footer.html