mybatis-generator:创建非 java 文件?

mybatis-generator: Create non-java files?

我在 maven 项目中使用 mybatis-generator 为几个表生成 Java 文件。在生成结束时,我想生成一些非 java 文件,如属性文件和资源。但是,默认生成器只允许我生成 XML 和 Java 文件。有没有办法让生成器创建 sql 文件、SPI 定义和 属性 文件?

查看生成器内部,生成的 java 文件和 XML 文件似乎经过了一些进一步的处理(格式化等)。即使我编写自定义插件,我也只能生成 XML 或 sql 文件,而不能生成属性文件或 sql 文件。即使我这样做了,我也无法完成该过程,因为后续步骤会失败。

目前,我正在通过创建自己的文件并通过自定义插件编写它们来克服这些问题。但是,在插件执行期间,文件夹 target/generates-sources/mybatis-generator 尚未创建。因此,排除了已经创建位置的假设。另一方面,如果我继续创建文件夹及其内部 META-INF/services 文件夹,我不确定这是否会在稍后阶段被覆盖。此外,我的插件没有(凭借生成器启动插件的方式)访问项目根文件夹。所以这也不是一个选择。

我都无法访问 ShellCallBack,这意味着将文件创建推迟到构建过程中明确定义的时间点也是不可能的。

那么我该如何着手创建服务定义和附加资源文件呢?

最后的办法是硬编码项目文件夹或通过 属性 抽取项目文件夹。这现在来救我了。但很明显,生成的文件正在被我的 git 客户端检测到,尽管它们是动态的,但我也必须清理这些文件。

请提示?

提前致谢。 拉胡尔

生成器目前支持Java、Kotlin 和XML 文件生成。有一个开放的功能请求以支持插件中的其他文件类型。你可以在这里关注它:https://github.com/mybatis/generator/issues/752