在创建战争时最小化gradle构建中的js文件

时间:2017-11-07 10:20:11

标签: javascript java gradle groovy gradle-plugin

我是全新的gradle,我设法通过以下脚本通过gradle-4.2.1创建战争:

apply plugin: 'war'
archivesBaseName = "idcapture"
version = '1.0' 
webAppDirName = 'WebContent'
buildDir = 'gradle_Build'

 sourceSets {
  main {
     java {
          srcDir 'src'
     }
     resources {
       srcDir 'conf'
     }
  } 
}

dependencies {
  compile fileTree(dir: "WebContent/WEB-INF/lib", include: '*.jar')
   }

我可以通过上面的代码创建一个war文件,但我的意图是war文件应该具有最小化的JS文件版本。因此我尝试了很多地方。 我试过erwin js插件而我无法实现:
fyr,https://github.com/eriwen/gradle-js-plugin

特别是我无法指向js文件路径并最小化我的脚本功能。错误是多种多样的,我不知道在我的脚本中将它放在哪里! Fyr,我的应用程序文件夹结构附件

main project folder structure
js folder structure

任何帮助将不胜感激。感谢

1 个答案:

答案 0 :(得分:0)

我发现它,如果我们在构建的任何地方添加以下erwil库。它工作正常:

    plugins {
    id 'com.eriwen.gradle.js' version '2.14.1'
}


import com.eriwen.gradle.js.tasks.MinifyJsTask
task minifyJS << {
    println "lets minify"
  fileTree('WebContent/js').eachWithIndex { file, index ->
    def dynamicTask = "minify$index"
    task "$dynamicTask" (type: MinifyJsTask) {
      source = file
      dest = file
    }
    tasks."$dynamicTask".execute()
  }
}