2012-01-27 17 views
10

All'interno di un modulo Java compilato da Gradle, voglio caricare i JAR risultanti del mio progetto in una posizione remota che sia raggiungibile tramite SSH/SCP. Tutti gli esempi che ho trovato non funzionavano nel mio ambiente. C'è anche un esempio su come usare SCP all'interno del tutorial Gradle: http://gradle.org/docs/current/userguide/maven_plugin.html (cerca "Esempio 38.4 Upload di file via SSH"). ho adattato l'esempio un po 'e ora hanno questo build.gradle:Upload via 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") 
     } 
    } 
} 

Ma quando ho testare lo script sto ottenendo questo errore:

$ 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'. 

Che cosa sto facendo di sbagliato? Qualcuno può fornire un esempio operativo completo?

[dovrebbe inviare questa domanda alla mailing list Gradle-utente, ma è attualmente in giù ...]

risposta

6

Come gentilmente risposto alla Mailing list Gradle (scusate per il doppio post) ho dovuto togliere il "org.apache.maven.wagon:wagon-ssh:2.2" all'interno dell'attività di configurazione:

(...) 
configurations { 
    deployerJars 
} 
(...)