java - 跳过 JOOQ 时不会编译 JOOQ 生成的源
问题描述
我们在我们的项目中一起使用spring boot
和Jooq
,我们正在设置一个带有build
, test
,deploy
阶段的 Gitlab CI/CD 流程。
我们发现 Jooq 在设置 CI/CD 过程时可能会有点挑战性,因为我们必须专门启动一个 dockerized db 来运行 jooq。
基本上,我们build
在 Gitlab CI 阶段的步骤是:
- 启动一个 dockerized db
- 执行飞路:
mvn flyway:migrate ...
- 运行
mvn package -DskipTests
(运行jooq
以生成代码) - 缓存
target/
到目前为止一切顺利,但是下一个 CI/CD 工作是Test
我们要做的阶段:
target/
从缓存中拉取- 跑
mvn test -DskipJooq=true
由于mvn package
已经执行了 jooq 来生成源文件,我们遇到的问题是调用mvn test -DskipJooq=true
JOOQ 时没有做任何事情,但我们仍然需要jooq
编译生成的 java 文件。
我找不到与此相关的任何内容。有没有办法做到这一点?
目前,我们通过启动 db、在测试阶段再次运行 flyway 和 jooq 来解决这个问题(与我们在build
阶段中的相同过程),但如果我们可以让 jooq 编译生成的源代码,这似乎是不必要的。