X

Sencha CMD app build

Сегодня начался курс про который я писал раньше тут: Тренинг по ExtJS от компании Farata Systems. Для работы нам потребовалось установить инструмент Sencha CMD который облегчает создание и управление проектом с помощью командной строки. Инструмент действительно полезный и интересный, однако при его использовании у меня возникла проблема с версиями Ruby..

При попытке сделать билд своему ExtJS проекту созданному с помощью Sencha CMD:

sencha app build

я получил такую ошибку:

[ERR] BUILD FAILED
[ERR] com.sencha.exceptions.ExNotFound: Failed to detect ruby
[ERR]
[ERR] Total time: 3 seconds
[ERR] The following error occurred while executing this line:
D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2\.sencha\app\build-impl.xml:3
89: The following error occurred while executing this line:
D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2\.sencha\app\build-impl.xml:2
94: com.sencha.exceptions.ExNotFound: Failed to detect ruby

D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2>sencha app build

На занятии нас предупредили, что на одном из последнем этапе компиляции, транслируются SASS скрипты в CSS, а так же готовятся спрайты для броузеров не поддерживающих CSS3. Это делается с помощью CSS Authoring Framework-а Compass. Он работает на Ruby, поэтому и нужно установить этот интерпретатор для успешной компиляции.

Ок, идем на сайт Ruby в раздел загрузок: https://www.ruby-lang.org/en/downloads/ и видим там такое сообщение:

If you’re on Windows, there’s a great project to help you install Ruby: RubyInstaller. It gives you everything you need to set up a full Ruby development environment on Windows.

Хорошо, идем на сайт RubyInstaller в раздел загрузок и качаем оттуда свежую версию. В моем случае это была версия: Ruby 2.0.0-p247 (x64). После загрузки я запустил инсталлятор и после нехитрых вопросов в мастере установки, интерпретатор был установлен:

D:\Progr\Ruby200-x64\bin>ruby --version
ruby 2.0.0p247 (2013-06-27) [x64-mingw32]

Однако при  попытке скомпилировать свой проект в Sencha CMD я получал по прежнему ошибку, в этот раз они написали, что моя версия Ruby слишком новая:

D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2>sencha app build
...
[ERR] Detected ruby version 2.0.0 was not less than 2.0. Please install ruby 1.8
 or 1.9.
[ERR]

Did not find a system installed ruby runtime
Please install ruby for this platform and ensure that
a ruby command compatible with 1.8 or 1.9 is available
on the system path.

[ERR]
[ERR] BUILD FAILED
[ERR] com.sencha.exceptions.ExNotFound: Failed to detect ruby
[ERR]
[ERR] Total time: 3 seconds
[ERR] The following error occurred while executing this line:
D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2\.sencha\app\build-impl.xml:3
89: The following error occurred while executing this line:
D:\Progr\FarataExtJS\Practice\Lesson-1\walkthrough2\.sencha\app\build-impl.xml:2
94: com.sencha.exceptions.ExNotFound: Failed to detect ruby

Я вернулся на сайт RubyInstaller-а и скачал и установил версию 1.9. После чего удалил из Windows PATH запись о пути к версии 2.0, и убедился что там остался только путь к 1.9, после чего открыл консоль и проверил версию:

C:\Users\Vitaliy>ruby --version
ruby 1.9.3p448 (2013-06-27) [i386-mingw32]

После чего компиляция приложения ExtJS, завершилась без ошибок.

Категории: ExtJS Frameworks JavaScript