JxlsReader读取excel报错java.lang.NoSuchMethodError:org.apache.poi.ss.usermodel.Cell.getCellType()

使用jxlsReader读取excel报错

JxlsReader.read(INTERPRETATION_DATA_IMPORT_XML, excel.getAbsolutePath(), beans);

报错为:找不到CellType方法,但是在/apache/poi/ss/usermodel/CellType中确实又存在

org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: org.apache.poi.ss.usermodel.Cell.getCellType()Lorg/apache/poi/ss/usermodel/CellType;

先查看项目引入的依赖:

<jxls.version>2.4.5</jxls.version>
<jxls-poi.version>1.0.15</jxls-poi.version>
<jxls-reader.version>2.0.3</jxls-reader.version>

<!-- https://mvnrepository.com/artifact/org.jxls/jxls -->
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls</artifactId>
			<version>${jxls.version}</version>
		</dependency>
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls-poi</artifactId>
			<version>${jxls-poi.version}</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.jxls/jxls-reader -->
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls-reader</artifactId>
			<version>${jxls-reader.version}</version>
		</dependency>

在网上找了一圈都说是poi版本太低了(jxls-poi1.0.15引入的poi版本为3.17),但是在这个项目并没有引入poi,意识到
jxls-poi应该已经包含了相应的poi版本,于是想将poi版本升级到4.0,在官网(http://jxls.sourceforge.net/changes.html)找到的日志如下:
2.4.7版本已经支持poi 4.0.0了

重新设置依赖版本

<jxls.version>2.4.7</jxls.version>
<jxls-poi.version>1.0.16</jxls-poi.version>
<jxls-reader.version>2.0.5</jxls-reader.version>

<!-- https://mvnrepository.com/artifact/org.jxls/jxls -->
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls</artifactId>
			<version>${jxls.version}</version>
		</dependency>
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls-poi</artifactId>
			<version>${jxls-poi.version}</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.jxls/jxls-reader -->
		<dependency>
			<groupId>org.jxls</groupId>
			<artifactId>jxls-reader</artifactId>
			<version>${jxls-reader.version}</version>
		</dependency>

完美搞定!

注意:因为jxlsReader是读取xml模板,所以在升级jxlsReader的同时将xmlbeans也升级

<xmlbeans.version>3.1.0</xmlbeans.version>
       <dependency>
			<groupId>org.apache.xmlbeans</groupId>
			<artifactId>xmlbeans</artifactId>
			<version>${xmlbeans.version}</version>
		</dependency>
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值