【问题标题】:How to include external webapp files during gradle build如何在 gradle 构建期间包含外​​部 webapp 文件
【发布时间】:2019-01-05 21:05:16
【问题描述】:

我试图在构建过程中合并来自多个项目的“src/main/webapp”内容。原以为这可以使用 sourceSets 规则来实现

sourceSets {
    main {
        java {
            srcDir 'src/main/java'
            srcDir project(':core').file('src/main/java')           
            srcDir project(':mongodb').file('src/main/java')           
            srcDir project(':tripper').file('src/main/java')           
        }
        resources {
            srcDir 'src/main/resources'
            srcDir project(':core').file('src/main/resources')           
            srcDir project(':mongodb').file('src/main/resources')           
            srcDir project(':tripper').file('src/main/resources')           
        }
        webapp {
            srcDir 'src/main/webapp'
            srcDir project(':core').file('src/main/webapp')           
        }
    }
    test {
        resources {
            srcDir 'src/test/resources'
            srcDir project(':core').file('src/test/resources')           
        }
    }
}

当我运行 gradle clean build 时,我收到以下错误。

$ gradle clean build

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\mikem\git\workbench\payment\build.gradle' line: 45

* What went wrong:
A problem occurred evaluating project ':payment'.
> Could not find method webapp() for arguments [build_anxrainh90symveso782viscs$_run_closure2$_closure6$_closure10@38dc5714] on source set 'main' of type org.gradle.api.internal.tasks.DefaultSourceSet.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s

我似乎没有webapp的构建位置,所以在构建过程中也无法运行文件夹复制任务。

文档描述 战争{ 包括“……” 从 '...' } 但没有看到战争中包含的内容,也没有显示错误。

任何人都知道这是否可能或可以完成这项任务的不同技术?

:(

【问题讨论】:

  • 你为什么要这样做?
  • 我希望在多个 Web 应用程序之间共享核心打字稿和静态页面。

标签: java eclipse web gradle


【解决方案1】:

我会为战争写一个单独的任务,让战争依赖它。

task copyOther(type: Copy){
  from //location
  into "$webAppDirName" //src/main/webapp

 }

war.dependsOn copyOther

由于您没有创建clean 任务不知道的任何文件夹,它应该能够清理文件

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-28
    • 2015-03-21
    • 2017-10-11
    • 1970-01-01
    • 2012-02-20
    • 2022-07-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多