Spring boot Spring boot Flyway Jooq代码gen maven插件顺序
如何强制flyway:migrate始终在jooq:generate sources之前执行? 我使用maven包装器和spring bootSpring boot Spring boot Flyway Jooq代码gen maven插件顺序,spring-boot,maven,maven-plugin,jooq,flyway,Spring Boot,Maven,Maven Plugin,Jooq,Flyway,如何强制flyway:migrate始终在jooq:generate sources之前执行? 我使用maven包装器和spring boot <plugin> <groupId>org.flywaydb</groupId> <artifactId>flyway-maven-plugin</artifactId> <version>6.3.3</v
<plugin>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-maven-plugin</artifactId>
<version>6.3.3</version>
</plugin>
<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>3.13.1</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<generator>
<database>
<name>org.jooq.meta.postgres.PostgresDatabase</name>
<inputSchema>public</inputSchema>
</database>
<target>
<packageName>bg.kotz.db</packageName>
<directory>src/main/java</directory>
</target>
</generator>
</configuration>
</plugin>
org.flywaydb
FlywayMaven插件
6.3.3
org.jooq
jooq codegen maven
3.13.1
生成源
生成
org.jooq.meta.postgres.PostgresDatabase
公众的
bg.kotz.db
src/main/java
您还必须将执行
块添加到flyway maven插件
部分,用于生成源下的made flyway执行迁移
步骤:
<plugin>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-maven-plugin</artifactId>
<version>6.3.3</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>migrate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>3.13.1</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<generator>
<database>
<name>org.jooq.meta.postgres.PostgresDatabase</name>
<inputSchema>public</inputSchema>
</database>
<target>
<packageName>bg.kotz.db</packageName>
<directory>src/main/java</directory>
</target>
</generator>
</configuration>
</plugin>
</plugins>
org.flywaydb
FlywayMaven插件
6.3.3
生成源
迁移
org.jooq
jooq codegen maven
3.13.1
生成源
生成
org.jooq.meta.postgres.PostgresDatabase
公众的
bg.kotz.db
src/main/java
当您在src/main/java
中生成代码时,Maven中的所有内容都开始中断。最好将其保留为默认的生成到target/..
,或者,如果您想签入生成的源代码,为Flyway迁移和jOOQ代码生成创建单独的Maven项目,这是可行的。当我输入springboot:run:1时。迁移架构2。用jooq生成的类,3。编译并启动,但在第3步,它再次尝试迁移,但失败,出现以下错误:“消息:错误:关系“foo”已存在“我不知道为什么,存在flyway\u schema\u历史记录,并且存在记录。您在应用程序中使用的flyway版本是什么?