【发布时间】:2013-07-02 19:18:27
【问题描述】:
我想使用 Velocity 来模板化我的电子邮件,但我很难给出模板的正确路径:“template.vm”,它位于我由 maven 创建的资源文件夹中。
我使用过:class.getResource("template.vm").getPath => 但是 getResource 重新运行 null 这是逻辑原因,因为我知道 template.vm 在这种情况下应该在类的同一个包中,并且我的模板.vm 在 WEB-INF/classes 上
所以我使用了:class.getResource("/template.vm").getPath,但它返回了错误的路径,在我的例子中,template.vm 的路径是:D:/folderOne/FolderTwo/WEB-INF/ classes/template.vm 和 getResource 重新运行:/D:/folderOne/FolderTwo/WEB-INF/classes/template.vm 什么使速度类抛出:无法找到具有给定路径的资源:/D:/folderOne/FolderTwo/ WEB-INF/classes/template.vm
我现在正在为这个小问题苦苦挣扎一天,请帮忙。
【问题讨论】:
-
为什么需要路径?你不能只使用输入流吗?
-
我需要将路径提供给速度方法以加载模板,我使用速度如下:模板 t = VelocityEngine.getTemplate(String name) 当名称是模板的名称时:模板。虚拟机
-
@BadrDRAIFI 它的发生是因为你想从上下文中获取路径,试试这个stackoverflow.com/questions/2308188/…
-
@AkashYadav 我试过了,但总是同样的问题 ResourceNotFoundException