1
15
Tomcat 8.5Tomcat 8.0也是如此。 见文件: Class Loader HOW-TO Tomcat 8.0
Class Loader HOW-TO
. 特别注意
雄猫6摘自Tomcat 6页, Class Loader HOW-TO
|
2
5
据我所知,从类路径选择资源是不确定的(从应用程序开发人员的角度)。即使一致加载同一文件,行为也可能发生变化: 1.升级当前容器的版本时。 . 嵌入log4j配置几乎从来都不是一个好主意,因为它会导致您在这里看到的问题。。。 它们是第三方罐还是您开发的罐? |
3
3
这是你的选择吗?如果您不使用Spring,我知道您可以通过编程方式设置Log4j位置,这也可能会起作用。 |
4
1
根据我的经验,WEB-INF/classes通常优先于WEB-INF/lib中的JAR,但是,这也取决于您使用的servlet容器(例如,我永远无法理解JRun的行为)。如果你能告诉我你用的是哪一个容器,那将非常有帮助。 另外,您确定有问题的log4j配置在WEB-INF/lib的jar中吗?通常,当我在servlet容器的情况下遇到类路径问题时,这是因为驻留的库 外部 servlet规范 推荐 |
5
1
如果不是,另一种方法(虽然很难看)是在应用程序代码中自己显式运行一个配置程序。 |
6
-1
在类路径中需要有log4j.properties。最好的位置是WEB-INF/classes下。 您还必须确保使用您的log4j.jar版本。所以,将它放在WEB-INF/lib中,只是为了确保您没有使用来自tomcat文件夹的文件,因为它可能会导致奇怪的类加载问题。 |
racumin · 基于maven构建生成类路径字符串 7 年前 |
Elisabeth · 设置Cassandra Liquibase 7 年前 |
Haroldas Poderskis · 错误:(30,0):找不到参数[com.android.tools.build:gradle:3.0.0-alpha9]的方法classpath() 7 年前 |
Keshav · 错误:无法找到或加载主类ExcelReadWrite 8 年前 |
Ashley · 将类路径设置为包含.jar文件 9 年前 |
raphnguyen · Bash编译Java类和JAR 9 年前 |