使用Gradle 构建Java Web项目中的一些疑问

发布于 2022-09-01 19:17:40 字数 234 浏览 14 评论 0

最近打算使用Gradle来管理接手的Java Web项目,实际使用中有如下几个疑问:

  1. 存在多个Java项目,旧代码中项目之间已经形成了循环依赖的关系,如需全量构建如何配置dependencies?如果配置循环依赖比较复杂,Gradel有没有比较简单的方式(现成的plugin)实现几个Java项目合并编译?

  2. 生产环境采用的是增量上线,Gradle可以抽取增量包吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

陪你到最终 2022-09-08 19:17:40

可以去看看 一些开源项目里gradle的配置,比如 spring framework的。

我用过的一种方法是 专门写一个dependencies.gradle文件,里面定义一些 共用的dependency,然后在 submodule中引用

ext {
    versions = [:]
    libraries = [:]
}

versions.common_lib="1.0.0-SNAPSHOT"

libraries.slf4j=dependencies.module('org.slf4j:slf4j-android:1.6.1-RC1')
libraries.protobuf=dependencies.module('com.google.protobuf:protobuf-java:2.6.1')

libraries.common_lib=dependencies.module('com.aaa:common-lib:'+versions.common_lib) {
    exclude group: 'commons-logging', module: 'commons-logging'
    exclude group: 'org.slf4j', module: 'slf4j-api'
}

submodule中可以直接 include 上面文件后声明依赖,

dependencies {
    compile libraries.common_lib
    compile project(':lib-common')
    compile project(':lib-data')
}

也可以 在 项目根目录中(这种方式 在gradle源码中有 使用 )

subprojects {
     .....
    apply from: "$rootDir/gradle/dependencies.gradle"
}
所谓喜欢 2022-09-08 19:17:40

如果原先用maven管理的话,直接在项目根目录下执行:gradle init wrapper

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文