Java Freemarker配置问题(Maven编译失败)
我正在做一个使用freemarker的项目,我需要做这样的调用: messageContent.append(FreeMarkerTemplateUtils.processTemplateIntoString(freemarkerConfig.getConfiguration().getTemplate(“sampleTemplate.ftl”),model)) 但当我尝试做mvn清洁包时,我得到了 “无法访问freemarker.template.Configuration [错误]找不到freemarker.template.Configuration的类文件” 当我尝试显式地创建一个配置对象Java Freemarker配置问题(Maven编译失败),java,maven,configuration,freemarker,Java,Maven,Configuration,Freemarker,我正在做一个使用freemarker的项目,我需要做这样的调用: messageContent.append(FreeMarkerTemplateUtils.processTemplateIntoString(freemarkerConfig.getConfiguration().getTemplate(“sampleTemplate.ftl”),model)) 但当我尝试做mvn清洁包时,我得到了 “无法访问freemarker.template.Configuration [错误]找不到fr
(Configuration config=new Configuration())
,Eclipse(正如预期的那样)建议我导入“freemarker.template.Configuration”。我导入了它,错误在Eclipse中消失了,但是当我再次尝试执行mvn clean package
时,我得到了一个生成失败,即“package freemarker.template不存在”
我的pom文件有:
org.freemarker
自由标记
2.3.20
运行时
我还需要做什么吗?
提前谢谢 您使用了错误的依赖范围。
运行时
范围不用于编译。从文档中:
此范围表示编译时不需要依赖项,但执行时需要依赖项。它位于运行时和测试类路径中,但不在编译类路径中
因此,将范围更改为编译
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.20</version>
<scope>compile</scope>
</dependency>
org.freemarker
您使用了错误的依赖范围。运行时
范围不用于编译。从文档中:
此范围表示编译时不需要依赖项,但执行时需要依赖项。它位于运行时和测试类路径中,但不在编译类路径中
因此,将范围更改为编译
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.20</version>
<scope>compile</scope>
</dependency>
org.freemarker
org.freemarker
自由标记
2.3.14
默认范围是compile
org.freemarker
自由标记
2.3.14
默认范围是compile