ho il compito Gradle che dovrebbe creare il profilo WebSphere su sistema operativo WindowsGradle: Esegui "Tipo: Exec" con molti argomenti con gli spazi
task createProfile(type:Exec) {
def commandToExecute = new StringBuffer()
def profile = 'AppSrv02'
def wasHome = 'C:/IBM new/WebSphere/AppServer'
def str = new LinkedList <String>();
str.add('cmd')
str.add('/c')
str.add(wasHome + '/bin/manageprofiles.bat')
str.add('-create')
str.add('-profileName')
str.add(profile)
//str.add('-templatePath')
//str.add(wasHome + '/profileTemplates/default')
println (str)
commandLine str.toArray()
}
E il problema appare se rimuovere il commento righe di commento, dopo che è compito fallisce e mi dice che: "C:/IBM" non è un file batch valido. Se metto profileTemplates non nella cartella che contiene spazi, tutto funziona di nuovo bene. Ma i template dovrebbero essere int wasHome (E a volte wasHome ha spazi (
Ho, ora idee per cui l'aggiunta di template chiave con valore con spazi influenza in modo tale che Gradle prova ad avviare "C:/IBM" invece specificato "C:/IBM nuovo/WebSphere/AppServer/bin/manageprofiles.bat '. Sembra che, possibilmente, problema all'interno di java.lang.ProcessBuilder.
Provo a citare percorsi, aggiungendo "/""
ma non funziona nulla (((cosa non è una sorpresa, perché ProcessBuilder implica quotarsi da solo se è necessario
Quindi, sto chiedendo se qualcuno ha avuto il problema simile e potrebbe consigliare come aggirare questo problema? Grazie in anticipo.
Questa soluzione non ha funzionato per me. Avevo un argomento come' --autoprefix = " ultime 2 versioni "', e gli spazi tra le doppie virgole gettavano sempre via le cose. –