以下是我的Jar
文件
root
- template.ftl
- org.project.myproject.App.java
在App.java中,我有一行代码,希望我指定加载directory
的{{1}}。类似的东西:
template.ftl
和下一行代码,阅读模板文件
Line#1: cfg.setDirectoryForTemplateLoading("java.io.File object that represents /directory/for/storing/template/files");
我的问题是我无法指定文件加载位置的目录路径。要加载的模板文件位于Line#2: Template temp = cfg.getTemplate("template.ftl");
的根目录中。我写的时候,
Jar
它说,cfg.setDirectoryForTemplateLoading(new File("."));
未找到。
什么应该是可以在template.ftl
上方正确设置模板目录的apprpriate代码?
答案 0 :(得分:3)
我认为这不适合你,因为你正在尝试加载一个不存在的文件,但是在你的jar中。要从jar文件中读取模板作为输入流,您可以这样做:
this.getClass().getClassLoader().getResourceAsStream("template.ftl");
我认为这有助于您走上正确的轨道。
答案 1 :(得分:0)
Line#2: Template temp = cfg.getTemplate("/template.ftl");