четверг, 8 августа 2013 г.

Рабочее пространство

Когда у вас в проекте не одно, а несколько одностраничных приложений на ExtJs (4.2), то в папку каждого приложения вы вынуждены повторно класть одни и те же файлы. Досадный пример - иконки. Более серьёзно заставляет задуматься над проблемой дублирование файлов SDK (библиотеки ExtJs). Они многочисленны, занимают много места на диске и тормозят IDE.

Выход есть - создавать приложения в рамках единой рабочей зоны. Трюк выполняется в два этапа:
  1. Создание рабочей зоны командой sencha generate workspace
  2. Создание приложения командой sencha generate app
Чтобы добавить второе, третье и прочие приложения, просто повторите пункт 2, изменив название приложения и имя папки внутри рабочего пространства.

Слово "трюк" было упомянуто выше, кстати, умышленно. Есть подводные камни. Чтобы обоити их и не оказаться на больничной койке на форуме поддержки, следует особое внимание  уделить тому, откуда вы будете вызывать команду sencha generate workspace. Её нужно вызывать из директории, в которой хранится SDK.

novikov@novikov-UX31A ~/NetBeansProjects/eurasclimat/www/httpdocs/sdk/ext-4.2.1.883 $ bash ~/bin/Sencha/Cmd/3.1.2.342/sencha generate workspace /home/novikov/NetBeansProjects/eurasclimat/www/httpdocs/workspace

Разберём команду по частям.

novikov@novikov-UX31A - имя пользователя и компьютера


 ~/NetBeansProjects/eurasclimat/www/httpdocs/sdk/ext-4.2.1.883 $ - директория, в которой хранится SDK


 bash ~/bin/Sencha/Cmd/3.1.2.342/sencha generate workspace - запуск команды через оболочку bash. Обратите внимание, что описан полный путь до исполняемого файла sencha. Это потому что я не стал настраивать переменную окружения PATH.

 /home/novikov/NetBeansProjects/eurasclimat/www/httpdocs/workspace - путь к создаваемому рабочему пространству.

После выполнения команды sencha generate workspace, в папке рабочего пространства, которую я совершенно произвольно назвал workspace, появится поддитектория - ext. Это то чего мы добивались. Чтобы на несколько одностраничных приложений была одна папка с библиотекой ExtJs.

Но это ещё не всё. Откроем папку рабочего пространства в терминале. Создавать новое приложение будем отсюда:

 novikov@novikov-UX31A ~/NetBeansProjects/eurasclimat/www/httpdocs/workspace/ext $ bash ~/bin/Sencha/Cmd/3.1.2.342/sencha generate app Project ../project

И наконец, для любителей кинематографа - видео:

Комментариев нет:

Отправить комментарий