2016-03-29 3 views
2

Как описано в Spring Boot documentation, конфигурация может быть передана через переменные среды. Однако есть некоторые свойства конфигурации, такие как spring.datasource.driver-class-name, которые содержат дефисы. При настройке этого параметра в bash вы получите сообщение об ошибке:Можно ли установить spring.datasource.driver-class-name через переменные среды?

$ export SPRING_DATASOURCE_DRIVER-CLASS-NAME=com.mysql.jdbc.Driver 
bash: export: `SPRING_DATASOURCE_DRIVER-CLASS-NAME=com.mysql.jdbc.Driver': not a valid identifier 

Это связано с тем, что переменные в bash не должны содержать дефисы. Возможно ли установить параметры конфигурации Spring, содержащие дефисы через переменные среды?

+0

Проверьте, поможет ли это http://unix.stackexchange.com/questions/23659/can-shell-variable-include-character, или вы можете рассмотреть возможность передачи их как свойств системы java, а не '-Dspring.datasource.driver -class-name = .... ' –

+0

@MadhusudanaReddySunnapu, который, безусловно, сделает трюк, спасибо! Но я хочу передать конфигурацию как переменную среды, поэтому в моем случае это действительно не помогает ;-) – britter

+3

Попробуйте заменить дефисы символами подчеркивания. Расслабленная привязка должна делать работу – joshiste

ответ

5

Весенняя обувь обеспечивает relaxed binding. По этой причине переменная окружения SPRING_DATASOURCE_DRIVER_CLASS_NAME может использоваться для установки имени класса драйвера.

Смежные вопросы