복붙노트

[SPRING] jOOQ는 소스를 생성하지 않습니다.

SPRING

jOOQ는 소스를 생성하지 않습니다.

내 코드에 jOOQ를 포함 시키려고하지만 코드가 생성되지 않습니다.

mvn clean generate-sources를 실행할 때 소스가 생성되지 않습니다. 다음 schema.sql 파일에 정의되어있는 Category 클래스를 생성하려고합니다.

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 파일은 다음과 같습니다.

<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 빌드는 오류없이 성공적으로 실행됩니다.

이 GitHub 저장소에서 전체 프로젝트를 찾을 수 있습니다.

해결법

  1. ==============================

    1.메모리 내장 데이터베이스를 사용하고 있습니다 : jdbc : hsqldb : mem : testdb. jOOQ 코드 생성기가 시작되면 다른 곳에서 만든 데이터베이스가 아닌 비어있는 새 데이터베이스를받습니다.

    메모리 내장 데이터베이스를 사용하고 있습니다 : jdbc : hsqldb : mem : testdb. jOOQ 코드 생성기가 시작되면 다른 곳에서 만든 데이터베이스가 아닌 비어있는 새 데이터베이스를받습니다.

  2. from https://stackoverflow.com/questions/51328307/jooq-does-not-generate-sources by cc-by-sa and MIT license