我在一个maven项目中使用mybatis-generator为几个表生成Java文件。在生成结束时,我想生成一些非java文件,如属性文件和资源。但是,默认生成器只允许我生成XML和Java文件。是否有任何方法也让生成器创建sql文件,SPI定义和属性文件,例如?
查看生成器内部,似乎生成的java文件和XML文件经历了一些进一步的过程(格式化等)。即使我编写自定义插件,我也只能生成XML或sql文件,但不能生成属性文件或sql文件。即使我这样做了,我也不能完成这个过程,因为后面的步骤会失败。
目前,我正在通过创建自己的文件并通过自定义插件编写它们来克服这些问题。但是,在插件执行期间,还没有创建文件夹target/generators -sources/mybatis-generator。因此,排除了已经创建位置的假设。另一方面,如果我继续创建文件夹和它的内部META-INF/services文件夹,我不确定它是否会在以后的阶段被覆盖。此外,我的插件不能(由于生成器启动插件的方式)访问项目根文件夹。所以这也不是一个选项。
我也不能访问ShellCallBack,这意味着在构建过程中将文件创建推迟到一个定义良好的时间点也是不可能的。
那么,我该如何创建服务定义和额外的资源文件呢?最后一种方法是硬编码项目文件夹或通过属性抽取项目文件夹。现在这个来救我了。但是很明显,生成的文件被我的git客户端检测到,我必须清理这些文件,尽管它们是动态的。
提示好吗?
提前感谢。拉胡尔
生成器目前支持Java、Kotlin和XML文件生成。有一个开放的特性请求来支持插件中的其他文件类型。你可以点击这里:https://github.com/mybatis/generator/issues/752