Как изменить рабочий каталог Tomcat по умолчанию?

В моем веб-приложении, когда я делаю new File(".").getAbsolutePath(), возвращается путь <tomcat_home>/bin. Я хочу изменить его на <tomcat_home>/webapps/<app_name>.

Каталог по умолчанию для HTML ./path работает нормально, и это тот путь, который мне нужен. Но путь Java ./Path в том же проекте отличается.

Я попытался добавить такой параметр, как workDir="Path", в область <Host> файла server.xml на моем сервере Tomcat, но это не сработало.

Как мне это изменить?


person Tobias    schedule 14.01.2016    source источник


Ответы (1)


Общий вопрос о том, как изменить рабочий каталог java-процесса, был задан ранее . Простой ответ заключается в том, что язык java и виртуальная машина java не позволяют изменить рабочий каталог процесса JVM. Вы не сможете изменить рабочий каталог после запуска tomcat.

Сценарии запуска Tomcat (bin/startup.sh и т. д.) не устанавливают рабочий каталог. Процесс tomcat обычно наследует текущую директорию, которая использовалась для сценария запуска. См. этот вопрос. Чтобы запустить tomcat в другом рабочем каталоге, вам нужно выяснить, что запускает tomcat, и изменить этот процесс, чтобы перейти в нужный каталог, прежде чем он запустит startup.sh.

person Kenster    schedule 22.01.2016