Cleaning Tomcat for Redeployment
Introduction
While it is often better to start with a fresh installation of Tomcat, sometimes it is useful to just clean out all traces of Sakai from Tomcat and redeploy.
Procedure for Sakai 11+
Tomcat 8
Shut Tomcat down. From the Tomcat directory:
- components
- Delete everything
- endorsed (Sakai 12+ only)
- Delete everything
- lib
- Delete everything except:
- The original jars that came with Tomcat
- Either keep a list of these and exclude them from the deletion (see Linux Tip below) or re-copy from a freshly-extracted Tomcat 8
- Â your database drivers (see Linux Tip below)
- Note that if you are using the MariaDB driver shipped with Sakai 11, you can safely delete it and it will be restored when you deploy Sakai
For Linux (substituting ecj-<version>.jar, and <your database driver>); tested in tomcat 8.0.32, and tomcat 8.0.33:
cd /opt/tomcat/lib shopt -s extglob rm -rf !(annotations-api.jar|catalina-ant.jar|catalina-ha.jar|catalina-storeconfig.jar|catalina-tribes.jar|catalina.jar|ecj-<version>.jar|el-api.jar|jasper-el.jar|jasper.jar|jsp-api.jar|servlet-api.jar|tomcat-api.jar|tomcat-coyote.jar|tomcat-dbcp.jar|tomcat-i18n-es.jar|tomcat-i18n-fr.jar|tomcat-i18n-ja.jar|tomcat-jdbc.jar|tomcat-jni.jar|tomcat-util-scan.jar|tomcat-util.jar|tomcat-websocket.jar|websocket-api.jar|<your database driver>)
- The original jars that came with Tomcat
- Delete everything except:
- temp
- Delete everything
- webapps
- Keep ROOT (if you have it)
- Delete everything else (see Linux Tip below)
- work
- Delete everything
Procedure for Sakai 10 and under
Tomcat 7/8
Shut Tomcat down. From the Tomcat directory:
- common/lib:
- Delete everything (Database drivers should be in lib, the other jars will be redeployed by Maven)
- components
- Delete everything
- shared/lib
- Delete everything
- temp
- Delete everything
- webapps
- Keep ROOT (if you have it)
- Delete everything else (see Linux Tip below)
- work
- Delete everything
Tomcat 5.5
Â
This process could be automated with a script or Maven goal.
Linux Tip
Run the following commands to delete everything in webapps except the specified directories ROOT, balancer, and webdav. A similar command can be used to avoid deletion of database driver jars.
cd /opt/tomcat/webapps shopt -s extglob rm -rf !(ROOT|balancer|webdav)