Gradle:自定义源代码集作为主源代码和测试源代码的依赖项

2022-09-02 13:24:47

我已经在Gradle项目中创建了自定义源代码集来保留所有生成的代码:

sourceSets {
  generated {
    java {
      srcDir 'src/generated/java'
    }
    resources {
      srcDir 'src/generated/resources'
    }
  }
}

我想使此源代码集的代码编译结果在编译和运行时可用。maintest

在Gradle中执行此操作的正确语义方法是什么?

更新:

正如这里所建议的:如何向 Gradle 添加新的源代码集?对我不起作用,当我启动我的应用时,我仍然会得到(尽管编译和单元测试运行良好)。这是我尝试过的:java.lang.ClassNotFoundException

sourceSets {
  main {
    compileClasspath += sourceSets.generated.output
    runtimeClasspath += sourceSets.generated.output
  }

  test {
    compileClasspath += sourceSets.generated.output
    runtimeClasspath += sourceSets.generated.output
  }
}

答案 1
sourceSets {
    main {
        compileClasspath += generated.output
        runtimeClasspath += generated.output
    }
}

对于源集也是如此。test


答案 2

推荐