解决maven冲突

如果部署后发现jetty启动失败,而且通过error日志观察到系统出现了NoSuchMethodError 很有可能是系统中出现了依赖冲突。解决依赖冲突可按如下步骤

1、查看jetty启动日志(/opt/meituan/jetty-distribution-9.2.0.v20140526/jetty.log)确定最内层的报错信息

image

发现是 LogManager这个类中缺少 getLoggerRepository方法,因为类名与文件名相同,所以可以在工程中搜索类名

2、可以看到在如下右侧红框中这些maven引入的jar包里都有这个类,而我们要关注的是左侧红框中的包名为org.apache.log4j(根据步骤1的报错)中的这两个LogManager

image

3、分别打开这两个LogManager文件,查看哪个依赖中没有getLoggerRepository()方法,就说明是该依赖的引入导致冲突

4、打开pom文件的Dependency Analyzer试图,找到问题依赖,然后点击右键Exclude掉就行了


解决maven冲突_第1张图片
image

你可能感兴趣的:(解决maven冲突)