bash: апплет не найден при запуске gradle в MobaXterm
В настоящее время я оцениваю MobaXterm как замену моей текущей простой установки Cygwin на моем компьютере с Windows7. Одна вещь, которую я застрял, это бегать "gradle". При выполнении я всегда получаю
bash: applet not found
У других людей были похожие проблемы с командами на мобильных устройствах и маршрутизаторах, например:
- http://forum.xda-developers.com/showthread.php?t=169113
- http://comments.gmane.org/gmane.linux.busybox/35809
Не знаю, как это сочетается, но решения чаще всего касались изменения символических ссылок или копирования вокруг исполняемых файлов базовой оболочки. Знает ли кто-нибудь зависимость среды gradle для разветвления рабочих / демонов и тому подобного или даже есть подробности о различиях между средой mobaXterm cygwin и обычной средой cygwin? Cygwin и MobaXterm используют один и тот же файл.bash_profile на моей машине.
Спасибо за ввод! ура
1 ответ
После любезного ответа службы поддержки MobaXterm я нашел решение. Проблема вызвана тем, что большинство основных команд MobaXterm (ls, cat, kill и т. Д.) Построены на busybox, который возвращает упомянутое выражение ошибки "bash: applet not found". (Может быть воспроизведен с помощью команды "busybox bash").
Согласно источникам gradle, unixStartScript.txt gradle имеет следующую преамбулу сценария:
#!/usr/bin/env bash
Я понял, что в MobaXterm команда env представлена в виде символической ссылки на конкретно busybox.exe. Это, кажется, следует / разрешено до фактической команды bash для скрипта запуска gradle. что приводит к
#!/usr/bin/busybox.exe bash
быть выполненным для подготовки окружающей среды.
Короче говоря: чтобы решить эту проблему, сделайте /bin/env.exe жесткой ссылкой на /bin/busybox.exe или просто скопируйте /bin/busybox.exe и переименуйте его в env.exe в проводнике Windows, чтобы наконец запустить gradle в MobaXTerm!
Приветствия Бен