定制War

下面的例子中有一些重要的自定义选项

例25.2.定制War插件

build.gradle

  1. configuration{
  2. moreLibs
  3. }
  4. respositories{
  5. faltDir {dirs "lib"}
  6. mavenCentral()
  7. }
  8. dependencies{
  9. compile module(":compile:1.0") {
  10. dependency ":compile-transitive-1.0@jar"
  11. dependency ":providedCompile-transitive:1.0@jar"
  12. }
  13. providedCompile "javax.servlet:servlet-api:2.5"
  14. providedCompile module(":providedCompile:1.0") {
  15. dependency ":providedCompile-transitive:1.0@jar"
  16. }
  17. runtime ":runtime:1.0"
  18. providedRuntime ":providedRuntime:1.0@jar"
  19. testCompile "junit:junit:4.12"
  20. moreLibs ":otherLib:1.0"
  21. }
  22. war{
  23. from 'src/rootContent' // 增加一个目录到归档根目录
  24. webInf {from 'src/additionalWebInf'} // 增加一个目录到 WEB-INF 下
  25. classpath fileTree('additionalLibs') // 增加一个目录到 WEB-INF/lib下.
  26. classpath configurations.moreLibs // 增加更多地设置到 WEB-INF/lib 下.
  27. webXml = file('src/someWeb.xml') // 复制xml文件到 WEB-INF/web.xml.
  28. }

当然,可以用一个封闭的标签定义一个文件是否存打包到War文件中.