Java 我可以使用Maven原型插件将自定义对象添加到Velocity上下文中吗?

Java 我可以使用Maven原型插件将自定义对象添加到Velocity上下文中吗?,java,maven,velocity,archetypes,Java,Maven,Velocity,Archetypes,我们有许多用于生成项目的代码生成器。生成过程可能相当复杂: 在调用velocity之前,使用反射(对我们必须与之接口的第三方代理进行内省)——生成的属性(复杂对象图)被添加到velocity上下文中 项目结构和文件可能因所选选项而异 模板不仅仅执行变量替换(它们使用添加到velocity上下文中的自定义对象,该上下文包含许多派生属性,包括在模板中迭代的其他对象的集合) 我很想用替换它们,因为它们也使用Velocity,但它们似乎只能进行简单的变量替换和静态文件/文件夹结构 在从原型创建项目、

我们有许多用于生成项目的代码生成器。生成过程可能相当复杂:

  • 在调用velocity之前,使用反射(对我们必须与之接口的第三方代理进行内省)——生成的属性(复杂对象图)被添加到velocity上下文中

  • 项目结构和文件可能因所选选项而异

  • 模板不仅仅执行变量替换(它们使用添加到velocity上下文中的自定义对象,该上下文包含许多派生属性,包括在模板中迭代的其他对象的集合)

我很想用替换它们,因为它们也使用Velocity,但它们似乎只能进行简单的变量替换和静态文件/文件夹结构

  • 在从原型创建项目、将对象添加到velocity上下文以及原型模板能够访问它们之前,是否有方法进行处理

  • 如果是,要创建的文件夹和文件是否可以是动态的?(或者每个变体都需要单独的原型?)

  • 还是写一个定制的魔咒更好?(基本上是用Maven插件包装现有的生成器)


  • 你找到问题的解决办法了吗。如果有的话,可能的方式是什么?不,我离开了那家公司。回顾过去,也许像Spring这样的基于groovy的解决方案会更好。我们在我目前的工作中使用它——它非常适合于模板化所有类型的东西,jinja模板非常灵活。