如何从独立插件向Gradle源集中添加类文件?

如何从独立插件向Gradle源集中添加类文件?,gradle,gradle-plugin,Gradle,Gradle Plugin,我正在编写一个Gradle插件,我需要告诉Java插件,我的插件还创建了类文件(来自wasm,Java编译器不能这样做) 我已将类文件放在$buildDir/classes/wasm/main 我需要将这个目录中的类放入jar任务创建的结果jar中 我可以在build.gradle文件中轻松地执行此操作: sourceSets { main { resources { srcDirs "src/main/resources", "build/cla

我正在编写一个Gradle插件,我需要告诉Java插件,我的插件还创建了类文件(来自wasm,Java编译器不能这样做)

我已将类文件放在
$buildDir/classes/wasm/main

我需要将这个目录中的类放入jar任务创建的结果jar中

我可以在
build.gradle
文件中轻松地执行此操作:

sourceSets {
    main {
        resources {
            srcDirs "src/main/resources", "build/classes/wasm/main"
        }
    }
}
但我需要从插件代码中执行此操作,这样用户就不需要在每个构建文件中复制此代码

有什么办法可以做到这一点吗

一个小细节:通过使此目录成为Java项目的依赖项,我使Java代码可以看到类文件(这样IDE也可以看到生成的类):

project.dependencies.add("implementation", project.files(compileWasm.outputDir))

不确定这是否是最好的方法,也不确定这两个问题是否真的相关。

我找到了一种方法来做与我在构建文件中所做的相同的事情

使用Kotlin语法:

val sourceSet = project.extensions.getByType(SourceSetContainer::class.java)
sourceSet.getByName("main").resources.srcDir(compileWasm.outputDir)
这就解决了问题,但我很想知道我这样做的方式是否如您在这种情况下所期望的那样(即用更多的类“丰富”Java插件的输出)