Java и переменные окружения в Windows - PullRequest
1 голос
/ 31 января 2011

Я использую:

<context:property-placeholder location="file:${PROJECT_CONFIG_PATH}/project.conf" />

в моем applicationContext.xml, чтобы получить локальный конфиг (один для разработки и другой для производства). PROJECT_CONFIG_PATH - системная переменная среды (не eclipse env).

Работает: в Windows в Eclipse (Jetty) и в Unix.

Не работает: в Windows с Tomcat 6 (java.io.FileNotFoundException: ${PROJECT_CONFIG_PATH}\project.conf)

Может кто-нибудь сказать, почему Tomcat в Windows не видит переменные среды? И как это можно решить?

Заранее спасибо!

Ответы [ 3 ]

1 голос
/ 31 января 2011

Если Tomcat запускается как служба, вам нужно использовать редактор конфигурации tomcat для установки переменной.

Пуск-> Программы-> Apache Tomcat xx-> Настроить Tomcat

Выберите вкладку Java Добавьте переменную в разделе «Параметры Java» следующим образом:

-DPROJECT_CONFIG_PATH="c:/yourpath"

Нажмите кнопку ОК и перезапустите службу tomcat.

0 голосов
/ 31 января 2011

Я не думаю, что загрузочные пакетные файлы Tomcat наследуют родительскую среду. Хотя не уверен почему.

Попробуйте установить PROJECT_CONFIG_PATH в catalina.bat или startup.bat в каталоге bin Tomcat.

0 голосов
/ 31 января 2011

Попробуйте это ...

<context:property-placeholder location="classpath:/PROJECT_CONFIG_PATH/project.conf" />
...