freemarker include 路径可以采用相对路径,也可以用绝对路径,主要是看你的FreeMarkerConfigurer中的路径配置。我用的SpringMVC,在spring-mvc.xml中配置如下:
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="configLocation" value="classpath:freemarker.properties" />
<property name="templateLoaderPath" value="<span style="color:#FF0000;">/WEB-INF/ftl/templetes/</span>" />
<property name="freemarkerVariables">
<map>
<entry key="xml_escape" value-ref="fmXmlEscape" />
</map>
</property>
</bean>
关键是红色路径,这将是你的ftl文件中include中的base路径。
eg:<#include "/common/common.ftl"> 将会引用/WEB-INF/ftl/templetes/common/common.ftl文件。