Я использую этот вопрос Execute shell script in Gradle в качестве справки, однако, я не могу понять, как заставить его работать.Выполнение сценария оболочки в градиенте не может видеть выход эха
Это мой Gradle файл:
...
task myPrebuildTask(type: Exec) {
println "Hello world from gradle"
commandLine 'sh', './myScript.sh'
}
build.dependsOn myPrebuildTask
У меня есть это в myScript.sh
#/бен/ш
!
эхо "Привет, мир из файла сценария"
Однако, когда я запускаю сценарий gradle assembleDebug
, я могу видеть только «Он llo world from gradle ", но не" Hello world из файла сценария ".
Yuchens-iMac:MyApplication yuchen$ gradle assembleDebug
Hello world from gradle
Incremental java compilation is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
...
Почему?
попытка вызова свою задачу в явном виде 'Gradle myPrebuildTask' – RaGe
The * Привет, мир от Gradle * печатается на этапе настройки. Я подозреваю, что ваша задача не выполняется вообще, когда вы называете «gradle assembleDebug» – RaGe
Возможно, вы ищете печатную строку в неправильном месте. «Hello world from gradle» печатается в фазе конфигурации, но «Hello world from script file» печатается на этапе выполнения, поэтому он должен быть далее вниз. – Tomik