Gradle:如何将jar位置配置为项目的父目录?

Ken*_*Liu 9 directory jar build gradle

我正在尝试构建一个Gradle JAR项目,该项目是另一个项目的子项目,并希望输出JAR文件位于父目录中(特定于父目录的"lib"目录或兄弟).如何为此配置Gradle以及在何处记录?

Ken*_*Liu 15

build.gradle,添加:

libsDirName = '../../lib'
Run Code Online (Sandbox Code Playgroud)

配置设置显示在java插件的官方Gradle文档中.

顺便说一句,我完全同意Peter和Hiery给出的意见和答案背后的意图,但有时最简单的解决方案是最好的解决方案.


Hie*_*mus 7

同意彼得打字的评论.但是我想你想表达的是父项目取决于子模块的输出.表达并确保父模块将子模块的输出复制到其"lib"目录更有意义.

task assembleSubModules(type: Copy) {
  destinationDir = file("lib")

  into("lib") {
    project.subprojects.each { p ->
      from(p.tasks.withType(Jar)*.outputs)
    }
  }
}
Run Code Online (Sandbox Code Playgroud)