Java Maven原型上的速度反射:从Json获取数据
我想从json文件中获取数据,以在maven原型中构建一个类。我试图用velocity中的反射来实现这一点,但我只能使用JavaSE类。我试图向原型pom添加依赖项,但velocity没有读到这一点。如何将其他类(如JSONTOL)放在mvn原型的velocity上下文中 这就是我所尝试的:Java Maven原型上的速度反射:从Json获取数据,java,apache,maven,velocity,maven-archetype,Java,Apache,Maven,Velocity,Maven Archetype,我想从json文件中获取数据,以在maven原型中构建一个类。我试图用velocity中的反射来实现这一点,但我只能使用JavaSE类。我试图向原型pom添加依赖项,但velocity没有读到这一点。如何将其他类(如JSONTOL)放在mvn原型的velocity上下文中 这就是我所尝试的: #set($str = $package.getClass().forName("org.apache.velocity.tools.generic.JsonTool").newInstance());
#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]**
检查您的依赖项和版本 您使用的是哪个版本的velocity引擎核心和velocity通用工具?JsonTool出现在velocity tools generic 3.0中,它至少需要velocity engine core 2.0 正确的依赖项部分应如下所示:
<dependency>
<groupId>org.apache.velocity.tools</groupId>
<artifactId>velicity-tools-generic</artifactId>
<version>3.0</version>
</dependency>
org.apache.velocity.tools
velicity通用工具
3
我正在使用velocity tool 3.0和velocity engine core 2.0。但我认为velocity并没有看到我的原型的依赖性。