2012-07-15 19 views
14

Estoy intentando crear un archivo Zip simple que contiene todos los archivos JavaScript en mi directorio de recursosNo es capaz de crear un archivo Zip en Gradle

Aquí está el código:

task zip(type:Zip){ 
    from ('resources/'){ 
     include '*.js' 
    } 
    into 'resources' 
} 

Esto no lo hace parece que funciona por alguna razón. Escuché a mucha gente decir que todo lo que necesita es un from y into para crear un archivo. Puede alguien ayudarme aquí ? Estoy usando Gradle v1.0. Gracias por adelantado.

Respuesta

22

Pruebe algo como esto (docs):

task zip(type:Zip) { 
from ('resources/') 
include '*.js' 
into 'resources' // note that this specifies path *in* the archive 
destinationDir file('dir') // directory that you want your archive to be placed in 
} 
+5

Usando Gradle 1.10 en Windows, que tiene un error cuando di destinationDir una cadena, pero parece que funciona bien cuando se importa un archivo , como 'destinationDir (file (" target "))' – amacleod

+2

destinationDir setter toma un archivo – JoeG

10
task someTask << { 

    // other code... 

    task(zipResources, type: Zip) { 
     destinationDir new File(projectDir, 'resources') 
     archiveName 'resources.zip' 
     from 'src/main/webapp' 
     include '*.js' 
    }.execute() 

    task(zipSomethingElse, type: Zip) { 
     destinationDir buildDir 
     archiveName 'source-code.zip' 
     from 'src/main/java' 
     include '**/*.java' 
    }.execute() 

    // some other code... 

} 
+0

brillantemente simple, gracias! – spy

Cuestiones relacionadas