Если среда NetBeans 6.0 IDE в системе еще не установлена, перейдите на страницу NetBeans IDE 6.0 Download Page и установите версию IDE, предусматривающую поддержку Ruby. Если используемая версия среды IDE NetBeans 6.0 не содержит поддержку Ruby, выполните следующие действия для ее добавления.
Если в сети имеется прокси, выберите в главном меню "Tools > Options", установите переключатель "Manual Proxy Settings" в диалоговом окне "Options", заполните поля "HTTP Proxy" и "Port" для прокси-сервера и нажмите кнопку "OK".
Выберите "Tools > Plugins" в главном меню.
В диалоговом окне "Plugins" щелкните вкладку "Available Plugins" и перейдите к категории Ruby, как показано ниже.
Для добавления поддержки Ruby в среду IDE NetBeans установите флажок "Ruby and Rails".
(Дополнительно) Установите флажок "JRuby and Rails Distribution" для загрузки и установки программного обеспечения JRuby и архитектуры Ruby on Rails.
Примечание: Для использования дистрибутива Ruby или JRuby в системе должно быть установлено программное обеспечение Ruby или JRuby. Если оно не установлено, перед работой с проектами Ruby в IDE следует установить этот подключаемый модуль или загрузить и установить программное обеспечение JRuby или Ruby.
(Дополнительно) Выберите один или несколько следующих подключаемых модулей:
Extra Ruby Color Themes. Дополнительные цветовые схемы редактора для типов файлов Ruby.
Depot Sample. Пример приложения на JRuby on Rails.
Ruby Extra Hints. Дополнительные подсказки при написании кода Ruby, например, обнаружение конфликтов имен локальных переменных и поиск имен переменных, не соответствующих правилам Ruby.
Ruby RSpec support. Обеспечивает поддержку архитектуры RSpec в среде IDE.
Нажмите кнопку "Install".
Появится экран программы NetBeans IDE Installer.
В NetBeans IDE Installer нажмите кнопку "Next".
Прочтите лицензионное соглашение, затем установите переключатель "I Accept the Terms in All License Agreements" и нажмите кнопку "Install".
После завершения установки выберите "Restart IDE Now" (немедленный перезапуск) или "Restart IDE Later" (отложенный перезапуск) и нажмите кнопку "Finish".
Настройка IDE для использования собственной среды Ruby (дополнительно)
При первом создании или открытии проекта Ruby в среде IDE производится проверка на наличие каких-либо других установленных версий Ruby в дополнение к поставляемому пакету JRuby. Если такие версии установлены, на экран выводится диалоговое окно для выбора программного обеспечения, которое будет использоваться.
Если программное обеспечение Ruby будет устанавливаться на более позднем этапе, в среде можно установить следующие настройки для использования текущей версии Ruby.
В главном меню IDE выберите "Tools > Options".
Выберите "Ruby" и, при необходимости, щелкните вкладку "Platform".
Если ранее какие-либо проекты Ruby не создавались и не открывались, при первом вызове вкладки "Platform" на экране появляется диалоговое окно "Choose Ruby Interpreter". В диалоговом окне представлен список доступных установленных версий Ruby, как показано на следующем рисунке. Если диалоговое окно не появляется, перейдите к действию 5.
Выберите интерпретатор Ruby, который требуется использовать. Если требуемый интерпретатор Ruby в списке отсутствует, нажмите кнопку "Other".
Нажмите кнопку "Close".
Если в действии 3 был выбран вариант "Other", или если диалоговое окно "Choose Ruby Interpreter" не отображается, нажмите кнопку "Browse", как показано на следующем рисунке. Найдите в системе двоичный файл Ruby и нажмите кнопку "Open".
Примечание: Окно "Ruby Options" также можно открыть путем нажатия кнопки "Change" на втором экране мастера создания проекта.
Для закрытия диалогового окна "Options" нажмите кнопку "OK".
Библиотеки Gem (также называемые "гемами") – это библиотеки Ruby, созданные сторонними разработчиками. В среде IDE предусмотрен диспетчер "Ruby Gems" для добавления библиотек Gem и управления ими. Для вызова диспетчера "Ruby Gems" выберите "Tools > Ruby Gems" в главном меню. Появится экран со следующими вкладками:
Updated. Список установленных в системе библиотек Gem, для которых доступны более новые версии.
Installed. Список библиотек Gem, установленных для зарегистрированной платформы Ruby. Для получения дополнительных сведений о регистрации платформы Ruby см. предыдущий раздел. При использовании платформы JRuby в случае, если в среде IDE имеется JRuby и подключаемый модуль Rails Distribution, этот список содержит библиотеку ActiveRecord-JDBC и архитектуру Rails (см. рисунок ниже).
New Gems. Список библиотек Gem, которые могут быть добавлены к платформе Ruby.
Settings. Эта вкладка предназначена для настройки прокси.
Примечание. Указания по настройке диспетчера "Ruby Gems" для управления собственным хранилищем библиотек Gem Ruby см. на вики-странице RubyGems.
Приложение на JRuby on Rails может обращаться к базам данных одним из двух способов.
Адаптер MySQL. В JRuby имеется адаптер MySQL. Этот адаптер используется так же, как и в стандартном приложении на Ruby on Rails.
Адаптер JDBC. Как было указано выше, JRuby и подключаемый модуль Rails Distribution содержат библиотеку Gem ActiveRecord-JDBC, которая позволяет приложению на JRuby on Rails обращаться к серверам базы данных посредством драйверов, совместимых с JDBC 3.0, например, MySQL, PostgreSQL, Oracle, HSQLDB и Java DB (Derby). Драйвер JDBC должен быть "чистым" драйвером Java. На момент написания этой статьи библиотека ActiveRecord-JDBC не поддерживала драйвер JDBC Sqlite.
Для использования подключения JDBC следует получить драйвер JDBC 3.0 для сервера базы данных и поместить копию драйвера JDBC в папку JRuby/lib. В зависимости от установленной версии, эта папка может располагаться в одном из двух мест.
netbeans-install-dir/ruby1/jruby-1.0.2/lib
netbeans-user-dir/jruby-1.0.2/JRuby/lib
Примечание: Драйверы MySQL и PostgreSQL JDBC поставляются в составе среды IDE. Если установленная версия содержит сервер приложений GlassFish, доступен также драйвер Java DB. Для нахождения этих драйверов выберите "Databases > Drivers" в окне "Services". Щелкните правой кнопкой мыши узел драйвера и выберите "Customize". Откроется диалоговое окно, показывающее местоположение файла драйвера.
Для использования адаптера JDBC в проекте Ruby on Rails установите флажок "Access Database Using JDBC" при создании проекта, как показано на следующем рисунке.
При установке этого флажка в файл environment.rb автоматически добавляются следующие операторы.
if RUBY_PLATFORM =~ /java/
require 'rubygems'
gem 'ActiveRecord-JDBC'
require 'jdbc_adapter'
end
При использовании для доступа к базе данных адаптера JDBC настройки базы данных в файле database.yml устанавливаются так же, как и в случае адаптера базы данных Rails; см. нижеприведенный пример кода.
adapter: mysql
database: my_development_database
username: fred
password: secret
host: localhost
При создании проекта Ruby on Rails к файлу database.yml автоматически добавляются параметры настройки для сервера базы данных, выбранного на втором экране мастера (см. предыдущий рисунок). В случае использования сервера базы данных, который отсутствует в раскрывающемся списке, можно изменить настройки БД в файле database.yml после создания проекта.
Примечание: Если файл узлов операционной системы не содержит запись localhost, вместо нее следует использовать адрес 127.0.0.1. Также необходимо отметить, что некоторые системы требуют указания параметра базы данных в нижнем регистре.
Добавление баз данных
Некоторые учебные руководства по среде NetBeans требуют создания базы данных для размещения используемых в примерах таблиц данных. Процедура добавления базы данных варьируется в зависимости от конкретного сервера БД. Ниже приведены указания для баз данных MySQL и Java DB.
Добавление баз данных MySQL
Запустите сервер базы данных, если это не было выполнено ранее.
(Дополнительно) Для создания нового пользователя выполните следующие действия.
Введите следующую команду в командной строке.
mysql -uuser-p
Если устанавливать пароль для пользователя не требуется, параметр -p вводить не следует. В противном случае введите пароль после появления соответствующего запроса. Пользователь должен обладать глобальными правами на создание пользователей или правами на вставку данных в БД MySQL (например, как пользователь root).
Для создания пользователя введите следующие команды.
CREATE USER 'fred'@'localhost'
identified by 'secret';
(Дополнительно) Для настройки прав доступа введите нижеприведенные команды. В этом примере пользователю предоставляются все права для всех баз данных на сервере localhost.
GRANT ALL PRIVILEGES ON *.* TO 'fred'@'localhost';
Введите quit и нажмите клавишу Enter для выхода.
Для создания базы данных введите следующие команды.
mysqladmin -u fred -p create mydb_development
Если устанавливать пароль для пользователя не требуется, параметр -p вводить не следует. В противном случае введите пароль после появления соответствующего запроса. Если пользователи еще не созданы, используйте root в качестве имени пользователя.
Для получения дополнительных сведений о создании пользователей и баз данных MySQL см. MySQL Reference Manual.
Добавление баз данных Java DB (Derby)
Если установленная версия IDE имеет в своем составе сервер приложений GlassFish, IDE настраивается для обращения к базе данных Java DB, предоставляемой вместе с GlassFish. Для добавления базы данных Java DB в среде IDE выполните следующие действия.
В главном меню IDE выберите "Tools > Java DB Database > Create Database".
В диалоговом окне "Create Java DB Database" заполните поля "Database Name", "User Name" и "Password" (необязательно), как показано на рисунке ниже.
(Дополнительно) Для указания другого местоположения базы данных нажмите кнопку "Settings", затем нажмите кнопку "Browse" рядом с полем "Database Location". Выберите папку, в которой должна располагаться база данных, и нажмите кнопку "Open". Нажмите кнопку "OK" для закрытия диалогового окна "Java DB Settings".
Нажмите кнопку "OK".
Среда IDE создает базу данных и добавляет узел к разделу "Databases" в окне "Services", как показано в следующем рисунке.
Регистрация баз данных в среде IDE
Для использования базы данных в проекте Ruby регистрировать ее в среде IDE не обязательно. Тем не менее, такая регистрация позволяет создавать и просматривать таблицы, а также выполнять команды SQL непосредственно из среды IDE.
Регистрация серверов баз данных в IDE
Сначала следует зарегистрировать в среде IDE сервер базы данных. Среда IDE была успешно протестирована на предмет поддержки следующих драйверов:
Java DB 10.3.1.4
MySQL Connector/J 5.0.7
PostgreSQL 8.2 build 506
Oracle 10.2.0.3
Драйверы MySQL, PostgreSQL и, дополнительно, Java DB уже зарегистрированы в среде IDE. Ниже приведены указания по регистрации в среде других серверов баз данных.
Получите (если это не было выполнено ранее) драйвер JDBC 3.0, совместимый с выбранным сервером базы данных.
Затем необходимо указать путь к этому драйверу. Среда IDE использует драйвер JDBC для обращения к схеме базы данных и запроса данных в БД. Если используемый драйвер не является полностью совместимым с JDBC 3.0, это может привести к возникновению некоторых проблем при работе со средствами баз данных IDE.
В окне "Services" разверните узел "Databases", щелкните правой кнопкой мыши узел "Drivers" и выберите "New Driver" в появившемся меню.
Появится диалоговое окно "New JDBC Driver".
Нажмите кнопку "Add", затем перейдите к файлу JAR драйвера, выберите его и нажмите кнопку "Open".
Появится диалоговое окно "New JDBC Driver JDBC", в котором будут представлены настройки выбранного драйвера.
Нажмите кнопку "OK" для закрытия диалогового окна "New JDBC Driver".
Под узлом "Drivers" в среде IDE появится новый узел добавленного сервера базы данных.
Подключение к экземпляру базы данных
Ниже приведены действия по настройке в среде IDE подключения к экземпляру базы данных, например, к базе данных mydb_development, описанной в предыдущем разделе.
В окне "Services" щелкните правой кнопкой мыши узел "Databases" и выберите "New Connection".
Появится диалоговое окно "New Database Connection".
Выберите драйвер из раскрывающегося списка "Name", например, MySQL (Connector/J driver).
В текстовом поле "Database URL" введите URL-адрес базы данных в формате, показанном в этом поле в качестве примера. Например, введите jdbc:mysql://localhost:3306/mydb_development.
Введите имя пользователя и пароль (если требуется), как показано на следующем рисунке.
Нажмите кнопку "OK".
После установления соединения нажмите кнопку "OK" для закрытия диалогового окна.
Под узлом "Databases" в среде IDE появится узел нового подключения. Значок узла указывает на то, что подключение открыто. При следующем запуске среды IDE значок будет перечеркнут, т.е. подключение будет закрыто. Для повторного подключения щелкните узел правой кнопкой мыши и выберите "connect", введите пароль, если это необходимо, и нажмите кнопку "OK".
Развертывание приложения на JRuby в GlassFish
Приложения на JRuby по умолчанию выполняются в обозревателе WEBrick. При необходимости развертывания приложения на JRuby на сервере приложений GlassFish это приложение и связанные с ним файлы можно упаковать в веб-архив WAR. После этого следует обеспечить доступность этого файла для сервера приложений (см. указания ниже).
Развертываемое приложение будет использовать продуктивную базу данных. Откройте файл database.yml и убедитесь, что установлены правильные настройки продуктивной базы данных.
При создании приложения на JRuby можно выбрать вариант добавления функций Rake для поддержки развертывания сервера приложений (см. рисунок ниже). Этот флажок необходимо установить для развертывания на сервере GlassFish.
Если функции Rake в существующем проекте JRuby отсутствуют, выполните следующие действия для добавления к проекту подключаемого модуля "goldspike". Этот модуль добавляет задачи Rake, позволяющие создать файлы WAR.
В окне "Projects" щелкните правой кнопкой мыши узел проекта и выберите "Rails Plugins" в появившемся меню.
В диалоговом окне "Rails Plugins" щелкните вкладку "New Plugins".
Если элемент "goldspike" отсутствует, выполните следующие действия для регистрации хранилища, предоставляющего модуль "goldspike".
Щелкните вкладку "Repositories".
Нажмите кнопку "Add URL".
В диалоговом окне "Add Repository URL" введите http://jruby-extras.rubyforge.org/svn/trunk/rails-integration/plugins и нажмите кнопку "OK".
После добавления хранилища нажмите кнопку "Close".
Щелкните вкладку "New Plugins". Теперь в списке должна появиться запись "goldspike".
Выберите запись "goldspike" и нажмите кнопку "Install".
Для запуска процесса установки нажмите кнопку "OK".
Закройте диалоговые окна "Installation" и "Rails Plugins".
Щелкните правой кнопкой мыши узел проекта и выберите "Run Rake Task > Refresh List" в появившемся меню.
Для сохранения приложения в файле WAR щелкните правой кнопкой мыши узел проекта и выберите "Run Rake Task > War > Standalone > Create".
Среда IDE создает файл WAR и помещает его в папку верхнего уровня проекта.
В случае использования адаптера JDBC следует поместить копию драйвера сервера базы данных JDBC в glassfish-install-dir/lib и запустить (или перезапустить) сервер GlassFish.
На момент написания этой статьи требовалось использовать адаптер JDBC, за исключением случаев подключения к базе данных MySQL.
Поместите копию созданного файла WAR в папку автоматической установки GlassFish. Например, скопируйте projects-folder/MyRubyApp/MyRubyApp.war в glassfish-install-dir/domains/domain1/autodeploy.
В обозревателе перейдите к URL-адресу приложения, например, http://localhost:8080/MyRubyApp.
Что дальше?
Для получения информации о быстром создании приложения на Ruby on Rails в среде IDE ознакомьтесь с руководством Создание блога Ruby за 10 минут.
Для получения поддержки и информации о последних изменениях в функциях разработки Ruby в среде NetBeans см. рассылки и .