我想从一个json文件中获取数据,以便以maven-archetype构建一个类。我正在尝试在速度上使用反射,但我只能使用java SE类。我试图将依赖添加到原型pom中,但是velocity无法读取它。如何将其他类(如JsonTool)放入mvn原型的速度上下文中?
这是我尝试过的:
#set($str = $package.getClass().forName("org.apache.velocity.tools.generic.JsonTool").newInstance());
在安装时,我有一个例外:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.1:integration-test (default-integration-test) on project:
[ERROR] **Archetype IT 'basic' failed: org.apache.maven.archetype.exception.ArchetypeGenerationFailure: Error merging velocity templates: Invocation of method 'forName' in class java.lang.Class threw exception java.lang.ClassNotFoundException: org.apache.velocity.tools.generic.JsonTool at archetype-resources/src/main/java/entity/__classname__Entity.java[line 6, column 33]**
发布于 2019-05-26 00:14:21
检查您的依赖项和版本。
您使用的速度引擎核心和速度工具通用版本是什么?JsonTool出现在velocity-tools-generic 3.0中,它至少需要速度-引擎-核心2.0。
正确的依赖关系部分应如下所示:
<dependency>
<groupId>org.apache.velocity.tools</groupId>
<artifactId>velicity-tools-generic</artifactId>
<version>3.0</version>
</dependency>
https://stackoverflow.com/questions/56305275
复制相似问题