jOOQ不生成源 [英] jOOQ does not generate sources

查看:107
本文介绍了jOOQ不生成源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将jOOQ包含到我的代码中,但是没有生成代码。

I am trying to include jOOQ into my code, however no code is being generated.

执行 mvn clean generate-sources ,不生成任何来源。我希望它创建一个 Category 类,它在以下 schema.sql -file中定义。

When executing mvn clean generate-sources, no sources are generated. I want it to create a Category class, which is defined in the following schema.sql-file.

CREATE TABLE IF NOT EXISTS category (
  id INTEGER IDENTITY PRIMARY KEY,
  name VARCHAR(100),
  description VARCHAR(2000),
  age_group VARCHAR(20),
  created DATETIME,
  inserted BIGINT
);

我的pom.xml文件如下所示:

My pom.xml file looks like this:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <artifactId>spring-data-jdbc-jooq</artifactId>

    <parent>
        <groupId>org.springframework.data.examples</groupId>
        <artifactId>spring-data-jdbc-examples</artifactId>
        <version>2.0.0.BUILD-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <name>Spring Data JDBC - Usage with jOOQ</name>
    <description>Sample project demonstrating Spring Data JDBC features</description>

    <dependencies>
        <dependency>
            <groupId>org.jooq</groupId>
            <artifactId>jooq</artifactId>
            <version>3.10.8</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jooq</artifactId>
            <version>2.0.3.RELEASE</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.jooq</groupId>
                <artifactId>jooq-codegen-maven</artifactId>
                <version>3.10.8</version>

                <executions>
                    <execution>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>

                <configuration>
                    <jdbc>
                        <driver>org.hsqldb.jdbcDriver</driver>
                        <url>jdbc:hsqldb:mem:testdb</url>
                    </jdbc>
                    <generator>
                        <name>org.jooq.util.DefaultGenerator</name>
                        <database>
                            <name>org.jooq.util.hsqldb.HSQLDBDatabase</name>
                            <inputSchema>PUBLIC</inputSchema>
                        </database>
                        <target>
                            <packageName>example.springdata.jdbc.basics.simpleentity.domain</packageName>
                            <directory>${basedir}/gensrc/main/java</directory>
                        </target>
                    </generator>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

我认为目录 gensrc 应该用适当的类创建。 maven构建成功运行,没有任何错误。

I would assume that a directory gensrc should be created with the appropriate class inside. The maven build runs successfully without any errors.

您可以在这个GitHub存储库

推荐答案

您正在使用内存数据库: jdbc:hsqldb:mem:testdb 。当jOOQ代码生成器启动时,它会收到一个空的 new 数据库,而不是您在其他位置创建的数据库。

You're using an in-memory database: jdbc:hsqldb:mem:testdb. When the jOOQ code generator starts, it receives a new database that is empty, not the database that you may have created elsewhere.

这篇关于jOOQ不生成源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆