Как запустить ректор на Windows с Cygwin - PullRequest
0 голосов
/ 06 октября 2019

После просмотра Рефакторинг огромных устаревших приложений PHP Я попытался запустить Ректор на сервере Windows 2016 для анализа качества кода.

Проблема

  • Ожидается: C:\Dev\PHP\ResourceSpace_9_0_13357>php vendor/bin/rector process --level code-quality должен возвращать некоторую информацию о качестве кода
  • актуально: команда возвращает нижеприведенное сообщение, которое я считаюошибка

Команда php vendor/bin/rector process --level code-quality возвращает:

dir=$(cd "${0%[/\\]*}" > /dev/null; cd "../rector/rector/bin" && pwd)

if [ -d /proc/cygdrive ]; then
    case $(which php) in
        $(readlink -n /proc/cygdrive)/*)
            # We are in Cygwin using Windows php, so the path must be translated
            dir=$(cygpath -m "$dir");
            ;;
    esac
fi

"${dir}/rector" "$@"

Обновление

Что я сделал

Поскольку команда вернула сообщение вышеЯ предполагал, что ректору под Windows нужен Cygwin. Поэтому я установил Cygwin и попытался запустить

$ pwd
/cygdrive/c/Dev/PHP/ResourceSpace_9_0_13357/vendor/rector/bin

me@box /cygdrive/c/Dev/PHP/ResourceSpace_9_0_13357/vendor/rector/bin
$ rector process --level code-quality --dry-run
-bash: rector: command not found

me@box /cygdrive/c/Dev/PHP/ResourceSpace_9_0_13357/vendor/rector/bin
$ process --level code-quality --dry-run
-bash: process: command not found

Обновление 2

Я на шаг впереди. Причина вышеуказанной ошибки заключается в том, что в cygwin необходимо запустить сценарий оболочки, набрав ./rector, а не только rector

me@box /cygdrive/c/Dev/PHP/ResourceSpace_9_0_13357/vendor/rector/bin
$ ./rector -debug
Composer autoload.php was not found in paths
"C:\Dev\...\vendor\rector\bin/../vendor/autoload.php", 
"C:\Dev\...\vendor\rector\bin/../../../../vendor/autoload.php". 
Have you ran "composer update"?

Я попытаюсь установить composer autoload.php на моем пути.

Обновление вопроса

  • Что мне нужно сделать, чтобы использовать rector в Windows?
  • Как мне настроить конфигурацию cygwin, чтобы команда rector была повторно распознана?
  • Как мне настроить compoloser autoload.php под windows?

Информация о моих предыдущих шагах

Я установил ректор на Windows, используя PS C:\Dev\PHP\ResourceSpace_9_0_13357> composer require rector/rector --dev thisКажется, что он успешно запущен без каких-либо ошибок. Первые строки

Using version ^0.5.13 for rector/rector
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 44 installs, 0 updates, 0 removals

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...