Java Gradle在docker容器中运行时失败

Java Gradle在docker容器中运行时失败,java,docker,gradle,code-generation,jooq,Java,Docker,Gradle,Code Generation,Jooq,我使用的是Gradle,它工作得很好,除非我在docker容器中运行它。我使用jOOQ代码生成器。生成的源文件位于build/generated src/jooq中,但在docker容器中生成时,compileJava任务失败。我得到编译错误,因为生成的源代码未编译,例如: /home/gradle/src/src/main/java/test/service/UserService.java:4: error: package test.database.mydb.tables.record

我使用的是Gradle,它工作得很好,除非我在docker容器中运行它。我使用jOOQ代码生成器。生成的源文件位于
build/generated src/jooq
中,但在docker容器中生成时,compileJava任务失败。我得到编译错误,因为生成的源代码未编译,例如:

/home/gradle/src/src/main/java/test/service/UserService.java:4: error: 
package test.database.mydb.tables.records does not exist
import test.database.mydb.tables.records.UserRecord;
在这两种情况下都使用了Gradle版本6.0.1

Dockerfile:

FROM gradle:jdk11 as build-stage
COPY --chown=gradle:gradle . /home/gradle/src
WORKDIR /home/gradle/src
RUN gradle clean build
我的身材。格雷德尔:

plugins {
    id 'java'
    id 'application'
    id 'nu.studer.jooq' version '3.0.3'
}

[...]

sourceSets.main.java.srcDir new File(buildDir, '/generated-src/jooq') // adding the generated sources of jooq folder to the main source set

jooq {
    version = '3.12.3'
    edition = 'OSS'
    database(sourceSets.main) {
        generator {
            database {
                [...]
            }
            target {
                packageName = 'me.mtte.code.ideahub.database'
                directory = new File(buildDir, '/generated-src/jooq') // the output directory
                clean = true
            }
        }
    }
}

有人知道为什么有和没有docker容器有区别吗?

为什么不问问这个问题?嗯。。。这不应该是一个与插件相关的问题,因为代码生成可以完美地工作。compileJava任务不知何故不知道已生成的源文件。您是否验证了这些类实际上是在容器中编译期间生成的?它们是生成的,但我不认为它们随后会被编译,因此error@xooback你解决了这个问题吗?我想我也遇到了一个类似的问题:当gradle从docker开始运行时,源代码生成不适合我