JOOQ 3.1 代码只为表格生成

JOOQ 3.1 Code generate just for tables

是否可以 运行 仅针对表格的代码生成器?我可以在 <exclude> 中很好地排除 pkgs,因为它们都以 _pkg 结尾,但我仍在生成函数和类型,因为它们的名称中没有公共部分。

jOOQ 3.8 添加了对代码生成标志的支持,以转换 on/off 特定类型的生成工件 (#3482)。配置为:

<database>
    <includePackages>false</includePackages>
    <includeRoutines>false</includeRoutines>
    ...

在 3.8 版之前,您仍然可以实现自己的 org.jooq.util.Database,例如覆盖 jOOQ-meta 中的 OracleDatabase,然后仅生成 TableDefinition 项,其他项的 none:

public class NoRoutinesOracleDatabase extends OracleDatabase {
    @Override
    protected List<RoutineDefinition> getRoutines0() {
        return new ArrayList<>();
    }

    // other things you want to prevent...
}

然后您可以配置代码生成器以使用 Database:

<configuration>
    <generator>
        <database>
            <name>com.example.NoRoutinesOracleDatabase</name>
            ...