Разработка динамического кода в IDE Eclipse

Материал из BiTel WiKi

Перейти к: навигация, поиск

Динамический Java код доступен с 5.2 версии биллинга и позволяет реализовывать расширение функционала с помощью обычных Java классов. При этом параметры быстродействия возрастают до 50 раз по сравнению со скриптами BGBS. Использование IDE позволяет использовать возможности автокомплита и проверки синтаксиса кода по ходу написания. Рассмотрим пример разработки динамического кода в IDE Eclipse.

Исходные требования:

  1. Установленная Eclipse JDT на машине разработчика.
  2. Установленный BGBillingServer на Linux сервере с SSH доступом с правами записи в каталог BGBillingServer/dyn. Для удобства можете воспользоваться авторизацией по ключу.

Создайте Java проект, например BillingRemoteCode. Расположен в каталоге /home/shamil/projects_ecl/BillingRemoteCode.

Проект

Смонтируйте удалённый каталог с доступом по SSH на локальную файловую систему.

Решение для LINUX с использованием пакетов sshfs и fuse-utils.

Монтирование удалённого каталога из под пользователя shamil.

# добавление группы fuse пользователю shamil, выполняется однократно
sudo gpasswd -a shamil fuse
# каталог для монтирования
mkdir /tmp/1
# монтирование
sshfs <user>@<host>:/opt/BGBillingServer "/tmp/1"
# для демонтирования каталога использовать
fusermount -u /tmp/1

Создайте ссылку из проекта на каталог с библиотеками и динамическим кодом.

ln -s /tmp/1/dyn /home/shamil/projects_ecl/BillingRemoteCode/src_dyn
ln -s /tmp/1/lib/app /home/shamil/projects_ecl/BillingRemoteCode/lib_app
ln -s /tmp/1/lib/ext /home/shamil/projects_ecl/BillingRemoteCode/lib_ext

Обновите проект. Правой кнопкой на проект и Refresh.

Проект с новыми папками

Нажмите по проекту в дереве проектов правой кнопкой мыши и выберите New => Source Folder. Выберите каталог src_dyn. Вызовите свойства проекта: правой кнопкой и Properties. На вкладке Libararies нажмите Add JARs и выберите все библиотеки из каталогов lib_app и lib_ext.

Добавление библиотек

Теперь в вашем распоряжении полноценная среда разработки. Вы можете править существующие классы, создавать новые. Все изменения будут сразу сохраняться в каталог dyn сервера. После завершения правки необходимо вызывать полную перекомпиляцию динамического кода в биллинге через.

Готовая среда

В принципе, можно было с помощью sshfs монтировать три каталога отдельно в проект, разницы нет. Монтировать весь каталог BGBillingServer в проект не стоит, т.к. в него будут записаны файлы с конфигурацией проекта.

Решение для Windows

Для Windows для монтирования удалённого каталога по SSH возможно использование бесплатного пакета SFTP Net Drive. Удалённый каталог монтируется на логический диск, логический диск линкуется к проекту. В остальном схема такая идентична описанной выше для Linux.

Личные инструменты