Java 包冲突
来源:互联网 发布:深圳华夏软件学校招生 编辑:程序博客网 时间:2024/04/30 13:43
问题
今天在写程序时向Maven的pom.xml文件中加入了hadoop-common包后,启动服务器发现日志信息无法正常打印,查看日志如下所示:
SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/**/WEB-INF/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J: Found binding in [jar:file:/**/WEB-INF/lib/logback-classic-1.1.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
从日志中可以看到是由于包含多个SLF4J
导致的。
分析 & 解决
进一步查看日志,发现原来是由于slf4j-log4j12-1.7.10.jar
和logback-classic-1.1.3.jar
中都包含有org/slf4j/impl/StaticLoggerBinder.class
导致引入多个SLF4J
。
这可能是由于hadoop-common
包中包含了slf4j-log4j12-1.7.10.jar
导致的,因此我在pom.xml中的hadoop-common
依赖下使用Maven的exclusions
排除slf4j-log4j12
依赖,问题得以解决,如下所示:
<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions></dependency>
通过解压hadoop-common-2.7.3.jar
(我使用的hadoop版本为2.7.3),可以看到在/META-INF/maven/org.apache.hadoop/hadoop-common/
目录下的pom.xml
文件中包含如下内容
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <scope>runtime</scope></dependency>
因此验证了上面的做法。
0 0
- java jar包冲突
- java 包冲突解决方法
- java 包冲突解决方法
- Java 包冲突
- java jar包冲突解决方法
- java jar包冲突解决方案
- Java包冲突常见解决方法
- Java类冲突、包冲突maven插件瞎搞
- java工程中,包冲突解决
- Dubbo包冲突:java.lang.reflect.MalformedParameterizedTypeException
- Java 读取Excel2007 jar包冲突的问题--Java 读取Excel2007 jar包冲突的问题
- jboss5 包冲突 java.lang.LinkageError: loader constraint violation
- 工作流jbpm4 java.lang.LinkageError: loader constraint violation 包冲突
- Java 读取Excel2007 jar包冲突的问题
- weblogic10.3.4与应用 jar包冲突 java.lang.NoSuchMethodError
- 【原】java(maven工程)包冲突解决办法
- 关于java poi导入导出excel的包冲突问题
- jbpm4 java.lang.LinkageError: loader constraint violation 包冲突
- CSS3选择器
- 数据结构与算法之大纲
- C++ Builder中制作图片边缘模糊效果的几种方法
- 礼物无货
- alsa-lib和alsa-util在TQ2416上的移植
- Java 包冲突
- 【5002】排版问题
- 屏幕类,用于全屏程序&显示任务栏
- 浮点型 比较
- 抢红包背后的技术点
- liferay中自定义字段及部分路由说明
- k-means算法学习
- Codeforces Round #379 (Div. 2) -- D. Anton and Chess (if else 的水题)
- Python 内置函数 locals()和 globals()