gpt4 book ai didi

gradle 按需编译依赖,否则使用 jars

转载 作者:行者123 更新时间:2023-12-03 05:17:29 26 4
gpt4 key购买 nike

我有兴趣在多模块项目中使用 gradle,我可以重复使用这个问题 Gradle nested multi-projects with project compile dependencies并说明其依赖关系

 Root
|__ P1
| |_ PP1
| |_ PP2
|
|__ P2
|_PP3
|_PP4

与最初的问题一样,我想编译 PP1 - 但我只是按需编译,否则我想使用最新的构建 jar 依赖项。
dependencies {
compile(project(":P1:PP1"))
}

所以理想情况下我想要类似的东西
dependencies {
compile(compileFromSourceCodeOrLoadJar(project(":P1:PP1"), 'P1:PP1'))
}

如果 PP1 目录中的源文件比最新构建的 jar 更新,它将被编译。这个想法是仅在绝对必要时进行编译。可以根据源文件与 jar 文件的最后修改时间戳做出决定。

为了使它更加复杂和潜在的高效,应该根据版本控制系统的输出做出决定——如果自时间 X 或修订版 R 以来有任何更改——然后检查和编译;否则使用 jar 依赖项。

有没有人解决过这个问题?我想它可以通过自定义 gradle/groovy 插件来解决,但肯定有人已经解决了?

谢谢。

最佳答案

Gradle 计划支持分布式构建缓存,但尚不可用。在不接触 Gradle 代码库的情况下很好地实现这一点可能会很困难(我不知道有任何这样的努力)。常规的 Maven/Ivy 存储库可能不是保存缓存构建结果的最佳位置。

关于gradle 按需编译依赖,否则使用 jars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23916957/

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