gpt4 book ai didi

grails - 如何使用 Grails 访问项目目录中的文件

转载 作者:行者123 更新时间:2023-12-01 01:29:05 25 4
gpt4 key购买 nike

我需要一些模板来呈现一些代码供用户粘贴。我把这些放进

/project-dir/grails-app/resources/templates/quickInstallCode.html

然后我尝试使用它们的相对路径( grails-app/resources/templates/quickInstallCode.html )访问它们,并且效果很好。

当我们使用 .war 文件将应用程序部署到 Tomcat 服务器时,路径开始指向错误的位置。
ERROR  call, Template file /var/lib/tomcat6/grails-app/resources/templates/quickInstallCode.html not found.

我认为,Grails,为所有东西提供良好的默认值会为我处理这个烂摊子,但似乎没有。

我也尝试过这个调用,它似乎工作得很好,但是在部署时,BuildSettingsHolder 不包含build设置,这导致了 fatal error 。
BuildSettingsHolder.settings.baseDir.toString()

http://grails.org/doc/latest/api/grails/util/BuildSettingsHolder.html
http://grails.org/doc/latest/api/grails/util/BuildSettings.html

我很沮丧,我无法完成这项简单的任务,但如此复杂的原因似乎是所有文件都封装在 WAR 中,而不是在服务器上解压缩。

所以问题是:
  • 你会把你的项目放在什么地方
    这样的文件?
  • 如何获得
    可靠稳定的访问方式
    这个文件?我只需要一个基本目录的稳定路径,而不必在配置中硬编码......这不可能那么难。
  • 最佳答案

    看看这个link并尝试使用 spring 提供的 getResource 。它的方式更加灵活和可配置。

    def filePath = "resources/file.txt"
    def appHolder=ApplicationHolder.application.parentContext.getResource("classpath:$filePath")

    顺便说一下,Conf 位于类路径的根目录下,您可以将文件粘贴在 src/java 或 src/groovy 中。

    关于grails - 如何使用 Grails 访问项目目录中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5935230/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com