Tomcat CLASSPATH

时间:2010-01-22 21:25:28

标签: tomcat xerces

我有一个非常讨厌的问题:

我的项目(JSP,Servlet)需要Xerces-J 2.8.1或更高版本。但是在我们的服务器(Tomcat 5.5)上,xerces 2.6.2总是首先出现,导致严重的错误。

我检查了$ CLASSPATH并做了一些清理工作。但是,xerces 2.6.2仍然存在。谁能告诉我如何知道这个xerces 2.6.2在哪里?

2 个答案:

答案 0 :(得分:1)

如果您在Web应用程序中包含Xerces jar,那么它取决于如何为您的应用程序和/或服务器配置类加载。这里有相关信息:

http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html

答案 1 :(得分:1)

首先,环境变量$CLASSPATH(及其Windows等效%CLASSPATH%忽略 其他而不是Java运行时命令(Windows中的java.exe)已执行而不任何-cp-classpath-jar参数。不要将此术语混淆为真正的类路径。对于那些不想每次都输入整个-cp-classpath参数的初学者来说,这个环境变量只是(差)方便。

关于您的实际问题,Tomcat在内部也使用Xerces来解析this document中概述的XML文件。如果您可以完全控制服务器,那么最好的办法是将较新的Xerces JAR文件放在/common/endorsed文件夹中,如文档中所述。