Как автоматически загрузить jar базы данных в Groovy без использования ключа -cp?
Вопрос
Я хочу упростить выполнение скрипта Groovy, который выполняет вызовы к базе данных Oracle. Как добавить jar ojdbc в путь к классам по умолчанию, чтобы я мог запустить:
groovy RunScript.groovy
вместо:
groovy -cp ojdbc5.jar RunScript.groovy
Решение
Суммировано из Groovy Recipes , Скотт Дэвис, Автоматическое включение JAR-файлов в каталог ./groovy/lib :
<Ол> .groovy / lib
в своем каталоге входа в систему Раскомментируйте следующую строку в $ {GROOVY_HOME} /conf/groovy-starter.conf
load! {user.home} /. groovy / lib / *. jar
Скопируйте нужные баночки в .groovy / lib
Похоже, что для Groovy 1.5 или более поздней версии вы получаете это по умолчанию (не нужно редактировать файл conf), просто поместите jar в каталог / lib.
Другие советы
Есть несколько способов сделать это. Вы можете добавить jar в переменную CLASSPATH вашей системы. Вы можете создать каталог с именем .groovy / lib в вашем домашнем каталоге и поместить туда jar. Он будет автоматически добавлен в ваш путь к классам во время выполнения. Или вы можете сделать это в коде:
this.class.classLoader.rootLoader.addURL(new URL("file:///path to file"))
groovy
- это просто скрипт-обертка для Groovy JAR, который устанавливает путь к классам Java. Полагаю, вы также можете изменить этот сценарий, добавив путь к своему JAR-файлу.
Вы можете добавить следующий shebang в первую строку вашего скрипта Groovy.
#!/usr/bin/env groovy -cp ojdbc5.jar
Затем отметьте исполняемый файл скрипта:
chmod u+x RunScript.groovy
Теперь при запуске самого скрипта будет автоматически установлен путь к классам.
./RunScript.groovy