class的搜寻顺序如下: ------------- Bootstrap classes of your JVM System class loader classses (described above) /WEB-INF/classes of your web application /WEB-INF/lib/*.jar of your web application $CATALINA_HOME/common/classes $CATALINA_HOME/common/endorsed/*.jar $CATALINA_HOME/common/i18n/*.jar $CATALINA_HOME/common/lib/*.jar $CATALINA_BASE/shared/classes $CATALINA_BASE/shared/lib/*.jar --------------
例如 使用javamail常见的一个出错信息: javax.mail.NoSuchProviderException: No provider for smtp 其真实原因就很可能如下: 在不同的加载jar的目录下放置了不同版本的mail.jar,比如一个是javamail1.3.1的mail.jar 在D:jakarta-tomcat-5.5.8commonlib下,而另外一个是javamail1.3.2的mail.jar在 D:jakarta-tomcat-5.5.8webappslizongboWEB-INF/lib下, 那么lizongbo这个webapp中使用到javamail进行邮件发送的时候,便会出现No provider for smtp的错误。