Gradle 处理资源并包含在 war 中

Gradle process resources and include in war

我正在尝试使用 Gradle 构建我的 APIMan 插件,它构建了一个 war 并且应该处理 src/main/apiman 中的资源并将这些资源包含在 META-INF/apiman 在内置的 war.

我在正确设置 build.gradle 时遇到了一些问题。这就是我的

processResources {
  from("${project.rootDir}/src/main/apiman") {
    include('**/*.json')
  }
  filter ReplaceTokens, tokens: [
    "project.version": '1.5.2-SNAPSHOT',
    "project.groupId": 'io.apiman.plugins',
    "project.artifactId": 'apiman-plugins',
    "project.packaging": 'war' 
  ]
}

war {
  from("${project.rootDir}/src/main") {
      include('apiman')
      into('META-INF')
  }
}

对于任何感兴趣的人,以下内容对我有用

war {
  with copySpec {
    from("src/main/apiman") {
      include('**/*')
      into('META-INF/apiman')
    }
    filter(ReplaceTokens, tokens: [
      "project.version": '1.5.2-SNAPSHOT',
      "project.groupId": 'io.apiman.plugins',
      "project.artifactId": 'apiman-plugins',
      "project.packaging": 'war' 
    ])
  }
}