bash: апплет не найден при запуске gradle в MobaXterm

В настоящее время я оцениваю MobaXterm как замену моей текущей простой установки Cygwin на моем компьютере с Windows7. Одна вещь, которую я застрял, это бегать "gradle". При выполнении я всегда получаю

bash: applet not found

У других людей были похожие проблемы с командами на мобильных устройствах и маршрутизаторах, например:

Не знаю, как это сочетается, но решения чаще всего касались изменения символических ссылок или копирования вокруг исполняемых файлов базовой оболочки. Знает ли кто-нибудь зависимость среды 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!

Приветствия Бен

Другие вопросы по тегам