gpt4 book ai didi

groovy - Gradle增量任务:将已经生成的代码添加到类路径中

转载 作者:行者123 更新时间:2023-12-03 06:20:52 26 4
gpt4 key购买 nike

我创建了一个自定义Gradle任务,该任务生成了一些Java代码。为了优化执行,此插件使用@InputDirectory和@OutputDirectory批注,因此不必每次构建都生成代码。

但是,我确实希望此任务将生成的代码添加到类路径中。我目前正在这样做

class JaxbTask extends DefaultTask {
@OutputDirectory
File destdir = project.file( "${project.buildDir}/generated-sources/mygen" )
@InputDirectory
File schemaRoot = project.file("${project.projectDir}/src/main/resources/myschema/")

@TaskAction
def main() {
..
project.sourceSets.main.java.srcDirs += destdir
..
}

问题在于,当生成的代码是最新的时,不会执行TaskAction并将源目录添加到编译路径中。有什么方法可以确保始终对源路径进行修改?

最佳答案

任务永远不要尝试配置构建模型。配置是构建脚本和插件的责任,需要在配置阶段进行(在运行任何任务之前)。

关于groovy - Gradle增量任务:将已经生成的代码添加到类路径中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25281021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com