Often when shutting down Tomcat, it does not shutdown gracefully and have to result in using the "kill -9" command. Using kill is not a good practice since it is not let the application do the cleanup during the shutdown process and can have undesirable side effects.

To avoid this, on Linux, there is an option to use PID during startup and shutdown. To use the same, follow the below steps:

  1. Create a file setenv.sh in $TOMCAT_DIR/bin folder
  2. Edit this file and set the variable CATALINA_PID with the pid.txt file path.

    CATALINA_PID=$TOMCAT_DIR/bin/pid.txt


  3. When using shutdown.sh, use the option -force

    shutdown.sh -force