【发布时间】:2014-07-28 20:56:28
【问题描述】:
我一直在开发一个 Grails 应用程序,它使用位于此目录中的一些 FileResources:
MyGrailsApplication\web-app\images
我可以通过 GrailsResourceUtils.WEB_APP_DIR 自然地通过 grails 获取这个目录。但是,当我将 Grails 项目转换为 .war 文件并将其部署到 tomcat 服务器时,该代码不起作用 - 路径变得混乱。
通过一些调试语句,我找到了解决此问题的方法(基本上,在我发动战争之前进行代码修改):
// BELOW 2 LINES WORK IN THE WAR FILE, BUT NOT WITH THE RUN-APP CMD
new FileResource(new File("../webapps/InstanceChecker-0.1/images/ok.png"))
new FileResource(new File("../webapps/InstanceChecker-0.1/images/http404.png"))
// BELOW 2 LINES WORK WITH RUN-APP, BUT NOT IN THE WAR
new FileResource(new File(GrailsResourceUtils.WEB_APP_DIR + "/images/ok.png"))
new FileResource(new File(GrailsResourceUtils.WEB_APP_DIR + "/images/http404.png"))
有没有办法在 run-app 和部署为 .war 时干净地获取图像路径?是否有一些我在这里遗漏的最佳实践?
编辑:也许我没有将图像放在理想的目录中?我也愿意接受这方面的建议。
【问题讨论】: