2012-01-27 22 views
10

Dentro de un módulo Java creado por Gradle, deseo subir los JAR resultantes de mi proyecto a una ubicación remota a la que se puede acceder a través de SSH/SCP. Todos los ejemplos que encontré no funcionaron dentro de mi entorno. También hay un ejemplo de cómo usar SCP dentro del tutorial de Gradle: http://gradle.org/docs/current/userguide/maven_plugin.html (busque "Ejemplo 38.4 Cargar archivo a través de SSH"). Me adaptado un poco el ejemplo y ahora tienen este build.gradle:Cargar a través de SCP con Gradle

apply plugin: 'java' 
apply plugin: 'maven' 

description = "User Service Implementation" 

repositories { 
    mavenCentral() 
} 

configurations { 
    deployerJars "org.apache.maven.wagon:wagon-ssh:2.2" 
} 

dependencies { 
    deployerJars "org.apache.maven.wagon:wagon-ssh:2.2" 
} 

uploadArchives { 
    repositories.mavenDeployer { 
     name = 'sshDeployer' // optional 
     configuration = configurations.deployerJars 
     repository(url: "scp://miniappserver") { 
      authentication(userName: "root", password: "test") 
     } 
    } 
} 

Pero cuando me probar que el guión que estoy recibiendo este error:

$ gradle uploadArchives -q 

FAILURE: Build failed with an exception. 

* Where: 
Build file '/home/ifischer/git/userservice/implementation/build.gradle' line: 11 

* What went wrong: 
A problem occurred evaluating project ':implementation'. 
Cause: Could not find method deployerJars() for arguments [org.apache.maven.wagon:wagon-ssh:2.2] on project ':implementation'. 

¿Qué estoy haciendo mal? ¿Alguien puede proporcionar un ejemplo completo de trabajo?

[deberían publicar esa pregunta a la lista de correo Gradle-usuario, pero es actualmente abajo ...]

Respuesta

6

Como amablemente respondió en la lista de correo Gradle (lo siento por doble desplazamiento) que tenía que quitar la "org.apache.maven.wagon:wagon-ssh:2.2" dentro de la configuración-tarea:

(...) 
configurations { 
    deployerJars 
} 
(...) 
Cuestiones relacionadas