繁体   English   中英

jooq 3.7.2 for Java6不排除使用架构

[英]jooq 3.7.2 for Java6 doesn't exclude if schema is used

我无法让'排除'与连接到db2的许可jooq 3.7.2(java 6)一起工作。 尝试了不区分大小写的版本。 我错过了什么? 我只是想忽略schema myschema中的别名,指向其他表中的其他表。 我收到警告'不明确的类型名称:对象X生成一个类型#fully限定类名#,它与现有类型#fully qualified class name#'冲突。 以前有人遇到过这个问题吗?

<generator>
                            <name>org.jooq.util.DefaultGenerator</name>
                            <database>
                                <name>org.jooq.util.db2.DB2Database</name>
                                <includes>.*</includes>
                                <excludes>myschema\.alias</excludes>
                                <schemata>
                                    <schema>
                                        <inputSchema>myschema</inputSchema>
                                        <outputSchema>dest</outputSchema>
                                        <outputSchemaToDefault>true</outputSchemaToDefault>
                                    </schema>
                                    <schema>
                                        <inputSchema>otherschema</inputSchema>
                                        <outputSchema>dest</outputSchema>
                                        <outputSchemaToDefault>true</outputSchemaToDefault>
                                    </schema>
                                </schemata>
                            </database>
                            <target>
                                <packageName>org.comp.model</packageName>
                                <directory>target/generated-sources/jooq</directory>
                            </target>
                        </generator>

您获得的警告可能与您指定的excludes标记没有任何关系。 警告源在这里:

<schema>
    <inputSchema>myschema</inputSchema>
    <outputSchema>dest</outputSchema>
    <outputSchemaToDefault>true</outputSchemaToDefault>
</schema>
<schema>
    <inputSchema>otherschema</inputSchema>
    <outputSchema>dest</outputSchema>
    <outputSchemaToDefault>true</outputSchemaToDefault>
</schema>

您正在使用代码生成时模式映射( 如此处所述 ),将模式myschemaotherschema重定向到相同的目标模式dest 如果你这样做,并且在两个模式中都有一个单独的对象(例如一个表),你会得到这种歧义,其中jOOQ不知道如何处理重复的类名。

就DB2别名而言,从jOOQ 3.8开始就不支持它们(参见https://github.com/jOOQ/jOOQ/issues/5564

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM