Warum verhalten sich Befehlszeile und ausführbare Datei anders als bei allgemeinen Tasks des Typs Exec?
Weiß jemand, warum in Aufgaben des Typs Exec Kommandozeile ausführbare Datei, Verhalten sich anders in Bezug auf Erben Umgebung vars?
Ich kann zum Beispiel nicht laufen diese Aufgabe, weil Gradle nicht finden ruby aus meiner Umgebung:
task checkRubyVersionCommandLine(type: Exec) {
commandLine 'ruby -v'
}
Doch dies funktioniert gut:
task checkRubyVersionExecute(type: Exec) {
executable = 'ruby'
args = ['-v']
}
Was ist die Kommandozeile, oder wie bekomme ich es zum abholen der Variablen der shell es ausgeführt wird? Warum ausführbaren nur Arbeit?
InformationsquelleAutor der Frage matt | 2013-04-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bei der Verwendung der Kommandozeile, die Sie brauchen, um split den string auf Leerzeichen, sonst wird das executable wird 'ruby -v' statt 'ruby'.
Also versuchen Sie dies:
Siehe code hier zu sehen, wie die Exec-Aufgabe, bearbeitet diese.
InformationsquelleAutor der Antwort Hiery Nomus