今天在写项目的时候需要使用Thread.currentThread().getContextClassLoader().getResource("")来获取项目的根目录读取一下配置文件,但是实际运行之后发现获取到的是tomcat/lib目录,网上查了一下资料以后发现是tomcat加载类机制的问题,默认优先加载web容器的一些加载类。
解决方法就是将tomcat的conf目录下的context.xml文件中的 <Loader delegate="true" /> 此处的true改为false,即可优先启动应用内部的类加载器。
重启tomcat之后问题解决。