有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在同一位置发布多个子项目JAR

我有一个gradle多项目(java)

根 |-苏巴 |-苏布 |-分包

我成功配置了我的根版本。格雷德尔和格雷德尔。解析依赖项和生成整个项目的设置正常

但是所有JAR都是以subX/build/libs(X=A,B,C)的形式生成的

是否有一种方法可以在最后重新组合所有内容(同时使用运行时资源) 那么一切都准备好装运了吗


共 (1) 个答案

  1. # 1 楼答案

    您的解决方案存在一些问题:任务依赖关系不正确,过时的Jar文件不会被删除,并且无法保证所有Jar任务都会被找到。(后者可以通过使用project.tasks.withType(Jar).all而不是.each来修复。)下面是一个更准确的解决方案:

    task deploy(type: Sync) {
        into "$buildDir/deploy"
        for (subproject in subprojects) {
            from subproject.tasks.withType(Jar)
        }
    }
    

    PS:除了一些需要最大灵活性的情况外,最好使用CopySync任务,而不是project.copy方法