Для этого вопроса я буду использовать пример проекта water
, включенный в исходный дистрибутив Gradle. (См. здесь .)
Код для этого примера можно найти по адресу samples/userguide/multiproject/tropicalWithProperties/water
в дистрибутиве Gradle '-all
'.
Иногда при использовании bash
в Cygwin, когда я запускаю gradle
с указанием абсолютного (логического) пути к задаче, которую я хочу выполнить, происходит что-то странное:
$ gradle :bluewhale:hello
/cygdrive/c/Program Files/Gradle/bin/gradle: line 153: bluewhale: command not found
/cygdrive/c/Program Files/Gradle/bin/gradle: line 153: hello: command not found
<-------------> 0% CONFIGURING [56ms]
FAILURE: Build failed with an exception.
* What went wrong:
Task '.' not found in root project 'water'.
* Try:
Run gradle tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run
with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 1s
Первые две строки вывода указывают, что bash или gradle интерпретировали текст после двоеточия как команды. Более того, никакая реальная задача, похоже, не передается в gradle (Task '.' not found in root project 'water'.
). Это подтверждается еще одним примером:
$ gradle :"echo foo":pwd
foo
/cygdrive/c/Users/Paolo/Desktop/Sandbox/water
FAILURE: Build failed with an exception.
* What went wrong:
Task '.' not found in root project 'water'.
[...]
Еще более странным является то, что он несовместим: при перезагрузке ноутбука проблема исчезает. Я бы добавил больше отладочной информации, но понятия не имею, с чего начать.
Насколько я знаю, проблема, как только она появляется, распространяется на всю оболочку. Любой сеанс Cygwin bash
будет иметь ту же проблему.
Это прекрасно работает при использовании Windows 'командной строки cmd
, поэтому я думаю, что это связано с Cygwin или Cygwin bash
.
Проблема не зависит от наличия пробела в пути gradle
(Program Files
).