我使用 jooq-codegen-maven 版本<3.10.5>
它适用于Postgresql 10.4,但不适用于PostgreSQL 9.4.6给出警告:
[WARNING] No schemata were loaded : Please check your connection settings, and whether your database (and your database version!) is really supported by jOOQ. Also, check the case-sensitivity in your configured <inputSchema/> elements : {=[schema_name]}
是否有jooq(代码生成器)和数据库版本的兼容性表?
我的插件配置为:
<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>3.10.5</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901.jdbc3</version>
</dependency>
</dependencies>
<configuration>
<!-- JDBC connection parameters -->
<jdbc>
<driver>org.postgresql.Driver</driver>
<url>jdbc:postgresql://X.X.X.106:5432/postgres</url>
<user>xxxx</user>
<password>xxxx</password>
</jdbc>
<!-- Generator parameters -->
<generator>
<name>org.jooq.util.DefaultGenerator</name>
<database>
<name>org.jooq.util.postgres.PostgresDatabase</name>
<includes>.*</includes>
<inputSchema>somedata</inputSchema>
<excludes></excludes>
</database>
<target>
<packageName>com.xxxx.xxxx.jooq.generated</packageName>
<directory>target/generated-sources/jooq</directory>
</target>
</generator>
</configuration>
</plugin>
答案 0 :(得分:0)
在我的情况下,jdbc url的数据库部分(jdbc:postgresql://X.X.X.106:5432 / postgres )对我的新数据库来说是错误的。因此,正确地更改它可以解决我的问题。
答案 1 :(得分:0)
当我从jooq网站复制粘贴pom.xml插件配置时,出现了相同的错误。后来我将pom.xml中的inputSchema更改为之前创建的数据库的名称(它是'public'),并生成了代码
我改变了
<inputSchema>public</inputSchema>
到
<inputSchema>library</inputSchema>
其中“库”是我创建的数据库的名称