в catalina.sh можно установить ПУТЬ К КЛАССУ, другая опция состоит в том, чтобы установить его в .profile | .bash_profile | .bashrc
sh syntax
export CLASSPATH=$CLASSPATH:/urs/local/tomcat/lib
для компиляции используют sh опцию и затем выходят, javac.... вот не человечности, кто должен понять, а скорее компилятор Java (javac)
Встроенные функции Provisioning Vagrant должны идеально подходить для этого. Есть множество способов сделать это, но самый простой, вероятно, состоит в том, чтобы взять весь свой сценарий Upstart и превратить его в простой сценарий оболочки. Затем поместите один из этих блоков в свой Vagrantfile
:
Используя «встроенный» скрипт. Vagrant скопирует содержимое из Vagrantfile
в скрипт в каталоге / tmp
и выполнит его.
$ script = <<< SCRIPT
// Содержимое вашего скрипта идет сюда
СЦЕНАРИЙ
config.vm.provision "оболочка", встроенный: $ script
Обратите внимание, что сценарий здесь находится внутри "heredoc" , что означает, что вам нужно быть осторожным, чтобы убедиться, что токен SCRIPT
, который завершает heredoc, находится справа место - то есть в отдельной строке без лишних пробелов. (Ссылка на heredoc выше показывает способ разрешить пробелы, но вам все равно нужно быть осторожным.)
Указание на файл сценария . Vagrant скопирует этот файл в каталог / tmp
и выполнит его.
config.vm.provision "shell", путь: "setup.sh"
Обратите внимание, что путь здесь указан относительно местоположения Vagrantfile
. Однако файл не запускается из этого места, поэтому, если вам нужно, чтобы файл находился в определенном каталоге, вы должны следовать методу № 3.
Использование «встроенного» скрипта, который указывает на файл сценария. Таким образом, вы можете выполнить сценарий в выбранном месте (в приведенном ниже примере это в / vagrant
после выполнения предварительных требований, таких как chmod
или установки переменных среды.
$ script = << СКРИПТ
chmod + x /vagrant/setup.sh
cd / vagrant
./setup.sh
СЦЕНАРИЙ
config.vm.provision "оболочка", встроенный: $ script
Вы также можете использовать метод обеспечения, который работает через «настоящую» систему развертывания и обеспечения, но в зависимости от ваших требований, это может быть излишним.