【问题标题】:Gradle gather all jar dependencies in multi project and build a earGradle 收集多项目中的所有 jar 依赖项并构建一个 ear
【发布时间】:2018-02-06 05:51:55
【问题描述】:

我对 gradle 很陌生,我正在努力实现以下目标 我已经设置了一个多项目构建,具有以下结构 根: :commonjar (java 库) :war1 (战争) :war2 (战争) :externaljars(非托管 jar 的本地存储库) :libs (ear)

我想自动收集 commonjar、war1 和 war2 的所有运行时依赖项,并生成一个可部署的 ear (libs),其中所有 jar 都存储在 libs.ear/lib 中

我已经找到了一种使用 taks 定义收集所有 jar 的方法,如下所示:

task copyDeps(type: Copy) {
    from(subprojects.configurations.runtime) 
    into project.file(libDirName)
}

但无论我将罐子存放在哪里,“耳朵”任务都不会拾取它。

只是为了解释一下,我需要做一个假耳朵,只有 jar 来进行远程部署并在 IBM Websphere 应用服务器上创建共享库定义。

有什么好的建议可以收集并打包整个项目中使用的所有 jars(以及传递)? 谢谢

【问题讨论】:

    标签: gradle jar dependencies ear multi-project


    【解决方案1】:

    您可以简单地配置ear 任务以包含您想要的依赖项,例如

    ear {
        duplicateStrategy = DuplicateStrategy.EXCLUDE
        lib {
            from rootProject.subprojects.configurations.runtime
        }
    } 
    

    【讨论】:

      猜你喜欢
      • 2015-05-13
      • 1970-01-01
      • 2013-01-30
      • 1970-01-01
      • 2018-06-30
      • 2017-02-11
      • 2020-01-13
      • 1970-01-01
      • 2017-06-09
      相关资源
      最近更新 更多