Tomcat için her ikisi de catalina.sh başlatma ve kapatma betiğinde kullanılan CATALINA_OPTS
ve iki ortam değişkeni JAVA_OPTS
vardır . Bu dosyadaki yorumlarda şu şekilde açıklanırlar:
[JAVA_OPTS]: (isteğe bağlı) "Başlat", "durdur" veya "çalıştır" komutu yürütüldüğünde kullanılan Java çalışma zamanı seçenekleri
ve
[CATALINA_OPTS]: (isteğe bağlı) "Başlat" veya "çalıştır" komutu yürütüldüğünde kullanılan Java çalışma zamanı seçenekleri
Öyleyse neden iki farklı değişken var? Ve fark nedir?
İlk olarak, EITHER değişkeninde belirtilen herhangi bir şey, Tomcat'i başlatan komuta - "start" veya "run" komutu - aynı şekilde geçirilir, ancak yalnızca JAVA_OPTS'de ayarlanan değerler "stop" komutuna aktarılır. Bu muhtemelen Tomcat'in pratikte nasıl çalıştığı konusunda herhangi bir fark yaratmaz, çünkü sadece bir koşunun sonunu etkiler, başlangıcı değil.
İkinci fark daha inceliklidir. Diğer uygulamalar da JAVA_OPTS kullanabilir, ancak yalnızca Tomcat CATALINA_OPTS kullanacaktır. Bu nedenle, yalnızca Tomcat tarafından kullanılmak üzere ortam değişkenlerini ayarlıyorsanız, en iyi CATALINA_OPTS kullanmanız tavsiye edilirken, JBoss gibi diğer java uygulamaları tarafından da kullanılacak ortam değişkenlerini ayarlıyorsanız, JAVA_OPTS içindeki ayarlarınız.
Kaynak: CATALINA_OPTS v JAVA_OPTS - Aralarındaki fark nedir?