Ada dua variabel lingkungan - CATALINA_OPTS
dan JAVA_OPTS
- yang keduanya digunakan dalam skrip startup dan shutdown catalina.sh untuk Tomcat. Mereka dijelaskan dalam komentar di dalam file itu sebagai:
[JAVA_OPTS]: (opsional) Opsi runtime Java digunakan ketika perintah "start", "stop" atau "run" dijalankan
dan
[CATALINA_OPTS]: (opsional) Opsi runtime Java digunakan saat perintah "start" atau "run" dijalankan
Jadi mengapa ada dua variabel berbeda? Dan apa bedanya?
Pertama, apa pun yang ditentukan dalam variabel SALAH SATU diteruskan, identik, ke perintah yang memulai Tomcat - perintah "start" atau "run" - tetapi hanya nilai yang ditetapkan di JAVA_OPTS yang diteruskan ke perintah "stop". Itu mungkin tidak ada bedanya dengan bagaimana Tomcat berjalan dalam praktiknya karena itu hanya mempengaruhi akhir lari, bukan awal.
Perbedaan kedua lebih halus. Aplikasi lain juga dapat menggunakan JAVA_OPTS, tetapi hanya Tomcat yang akan menggunakan CATALINA_OPTS. Jadi jika Anda mengatur variabel lingkungan untuk digunakan hanya oleh Tomcat, Anda akan disarankan untuk menggunakan CATALINA_OPTS, sedangkan jika Anda mengatur variabel lingkungan untuk digunakan oleh aplikasi java lain juga, seperti oleh JBoss, Anda harus meletakkan pengaturan Anda di JAVA_OPTS.
Sumber: CATALINA_OPTS v JAVA_OPTS - Apa bedanya?