Есть две переменные среды - CATALINA_OPTS
и JAVA_OPTS
-, которые используются в сценариях запуска и завершения работы catalina.sh для Tomcat. Они описаны в комментариях к этому файлу как:
[JAVA_OPTS]: (необязательно) параметры среды выполнения Java, используемые при выполнении команды «start», «stop» или «run»
и
[CATALINA_OPTS]: (необязательно) параметры среды выполнения Java, используемые при выполнении команды "start" или "run"
Итак, почему есть две разные переменные? А какая разница?
Во-первых, все, что указано в переменной EITHER, идентично передается команде, запускающей Tomcat - команда «start» или «run», но только значения, установленные в JAVA_OPTS, передаются команде «stop». Это, вероятно, не имеет никакого значения для того, как Tomcat работает на практике, поскольку влияет только на конец выполнения, но не на начало.
Второе отличие более тонкое. Другие приложения также могут использовать JAVA_OPTS, но только Tomcat будет использовать CATALINA_OPTS. Поэтому, если вы устанавливаете переменные среды для использования только Tomcat, вам лучше всего рекомендуется использовать CATALINA_OPTS, тогда как если вы устанавливаете переменные среды, которые также будут использоваться другими приложениями Java, такими как JBoss, вы должны поставить ваши настройки в JAVA_OPTS.
Источник: CATALINA_OPTS v JAVA_OPTS - В чем разница?