2011-03-18 99 views

回答

2

由於您使用標記了問題,因此我假設您正在運行Java Servlet Web應用程序。

在這種情況下,classpath覆蓋webapp的/WEB-INF/lib文件夾中的JAR文件以及webapp的/WEB-INF/classes文件夾中的所有類文件。因此,您必須將第三方JAR文件和/或您的類完全刪除,以使它們在Web應用程序的運行時類路徑中可見。

%CLASSPATH%環境變量是由一切比其未經-jar-cp-classpath參數執行java executabele否則忽略方式。不要將它用於webapps。

0

在Mac OS X上,前段時間我停止使用CLASSPATH環境變量;我現在爲每個項目設置它。很多時候,我會忘記隱藏在不斷增長的路徑中被遺忘的凹處的更老的,相互衝突的JAR。特別是,我不知道爲Tomcat設置它的原因。如果您好奇,$CATALINA_HOME/bin/setclasspath.sh可能會提供信息。

如果你需要一些其他原因,bash的咒語,包括這個如下所示:

export CLASSPATH=.:/opt/this/this.jar:/opt/that/that.jar:…