Java 格拉德尔用不同的资源和职业发动多场战争

Java 格拉德尔用不同的资源和职业发动多场战争,java,gradle,Java,Gradle,我有一个JavaWeb项目,我使用Gradle来构建项目,项目结构如下 我想使用Gradle构建2个war,main.war和api.war,wars结构如下 我曾多次尝试构建这两个war,但当main.war正确时,api.war是错误的,当api.war正确时,main.war是错误的 谁能给我一些帮助吗?谢谢 项目结构: project-root |--src |--api |--resources |--api.xml |--webap

我有一个JavaWeb项目,我使用Gradle来构建项目,项目结构如下

我想使用Gradle构建2个war,main.war和api.war,wars结构如下

我曾多次尝试构建这两个war,但当main.war正确时,api.war是错误的,当api.war正确时,main.war是错误的

谁能给我一些帮助吗?谢谢

项目结构:

project-root
  |--src
    |--api
      |--resources
        |--api.xml
      |--webapp
        |--WEB-INF
          |--web.xml(api)
    |--main
      |--java
         |--xxx.xxx.api
         |--xxx.xxx.model
         |--some other packages
      |--resources
        |--main.xml
      |--webapp
        |--websrc
          |--js
          |--style
        |--WEB-INF
          |--web.xml(main)
        |--index.html
我想要的结构:

main.war
  |--websrc
    |--js
    |--style
  |--WEB-INF
    |--classes
      |--all packages exclude api package
      |--main.xml
    |--web.xml(main)
  |--index.html



api.war
  |--WEB-INF
    |--classes
      |--xxx.xxx.api
      |--xxx.xxx.model
      |--api.xml
    |--web.xml(api)
我的gradle文件:

task create_main_war(type: War, dependsOn: classes) {
    baseName = "main"
    rootSpec.exclude("**/api/**") 
}

task create_api_war(type: War, dependsOn: classes) {
    baseName = "api"
    SourceSets {
        main.resources.srcDirs += "src/api/resources"
    }
    webAppDirName = "src/api/webapp
    rootSpec.exclude("**/main.xml")
    rootSpec.exclude("**/someOtherPackages/**") 
}

关闭,请查看forums.gradle.org问题:

你能发布你正在使用的build.gradle文件吗?好的,我已经添加了我的gradle文件内容。请不要在这里和上面重复发布。@PeterNiederwieser,好的,我将关闭该问题并关注该问题。谢谢。