На самом деле мое приложение представляет собой три отдельных приложения с общей базой данных.
Изначально я запускал свои приложения, используя встроенный Tomcat в Spring Boot и используя относительный URL-адрес для местоположения H2
jdbc:h2:file:./db/myapp;AUTO_SERVER=TRUE
Это было нормально, поскольку это создает базу данных в каталоге приложения, и все автономно с правильными разрешениями.
Однако теперь мне нужно переупаковать как войну и развернуть на автономном Tomcat, который я не использую.т администрировать.Я хочу, чтобы приложение было как можно более автономным и не требовало изменения частей Tomcat для его запуска.
Использование приведенного выше URL не сработает, поскольку оно попытается поместить базу данных в каталог tomcat bin..
Другие варианты, о которых я думал, требуют изменений в том, как запускается Tomcat, и я бы хотел этого избежать.например,
- Добавление переменной среды перед запуском Tomcat
- Установка сценария setenv Tomcat bin dir
- Запуск Tomcat с использованием
CATALINA_BASE
Если я использую абсолютный путь, он будет работать, но он требует, чтобы я устанавливал его при каждом развертывании, а также каждый разработчик должен будет указывать его в своем конкретном каталоге и иметь локальные изменения.
Какие у меня есть альтернативы?