spark,poi,jar包冲突(commons.io)

1.查看报错类是属于哪个jar包

java 复制代码
System.out.println("ZipArchiveInputStream类是:" + ZipArchiveInputStream.class.getProtectionDomain().getCodeSource().getLocation());
System.out.println("UnsynchronizedByteArrayOutputStream 类是:" + UnsynchronizedByteArrayOutputStream.class.getProtectionDomain().getCodeSource().getLocation());
System.out.println("IOUtils 类是:" + IOUtils.class.getProtectionDomain().getCodeSource().getLocation());

2.使用shade来打包并隔离依赖,就是重命名包名

XML 复制代码
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-shade-plugin</artifactId>
	<version>3.2.4</version>
	<executions>
		<execution>
			<phase>package</phase>
			<goals>
				<goal>shade</goal>
			</goals>
			<configuration>
				<relocations>
					<relocation>
						<pattern>org.apache.commons.io</pattern>
						<shadedPattern>myshade.org.apache.commons.io</shadedPattern>
					</relocation>
				</relocations>
			</configuration>
		</execution>
	</executions>
</plugin>

3.排除jar包

XML 复制代码
<dependency>
	<groupId>org.apache.spark</groupId>
	<artifactId>spark-core_${scala.version}</artifactId>
	<version>${spark.version}</version>
	<exclusions>
		<exclusion>
			<artifactId>jackson-annotations</artifactId>
			<groupId>com.fasterxml.jackson.core</groupId>
		</exclusion>
		<exclusion>
			<artifactId>jackson-core</artifactId>
			<groupId>com.fasterxml.jackson.core</groupId>
		</exclusion>
		<exclusion>
			<artifactId>jackson-databind</artifactId>
			<groupId>com.fasterxml.jackson.core</groupId>
		</exclusion>
		<exclusion>
			<artifactId>jackson-module-scala_2.11</artifactId>
			<groupId>com.fasterxml.jackson.module</groupId>
		</exclusion>
		<exclusion>
			<artifactId>commons-compress</artifactId>
			<groupId>org.apache.commons</groupId>
		</exclusion>
	</exclusions>
<!--            <scope>provided</scope>-->
</dependency>

4.引入jar包

XML 复制代码
<dependency>
	<groupId>commons-io</groupId>
	<artifactId>commons-io</artifactId>
	<version>2.17.0</version>
</dependency>
<dependency>
	<groupId>org.apache.commons</groupId>
	<artifactId>commons-compress</artifactId>
	<version>1.18</version>
</dependency>
相关推荐
真上帝的左手6 分钟前
19. 大数据- BI 入门-数仓实战4-DIM 维度层
大数据·数据仓库·bi
不吃天鹅肉8 分钟前
数据湖Delta Lake 初试
大数据·数据湖
小真zzz9 分钟前
GEO选型避坑实录:当“参考答案”是假的,如何找到“标准答案”?
大数据·人工智能·搜索引擎·ai·大模型
亿信华辰软件15 分钟前
什么是数据血缘?为什么它是数据治理的核心?
大数据·数据血缘
真上帝的左手20 分钟前
19. 大数据- BI 入门-数仓实战终篇-数据仓库演进对比与深度思考
大数据·数据仓库·bi
数据皮皮侠AI24 分钟前
中国土地利用驱动因子数据集(9种驱动因子/裁剪到省市/Tif)
大数据·人工智能·笔记·能源·1024程序员节
kke_8829 分钟前
电商/教育/工具类小程序,UV分析的3种不同思路
大数据·apache
小沈跨境30 分钟前
Temu被罚2.32亿美元,CPSC认证批量上传合规指南
大数据·运维·网络·人工智能·temu·跨境
Elastic 中国社区官方博客30 分钟前
6个资源,1条命令:使用 Terraform 全自动化实现 Elastic 异常检测
大数据·人工智能·elasticsearch·搜索引擎·云原生·自动化·terraform
captain_AIouo35 分钟前
深耕跨境赛道!autoAGC跨境AI,挖掘海外百亿增量红利
大数据·人工智能·经验分享·aigc