Java程序中使用Spire Jar包报java.lang.NoSuchMethodError类型错误的解决方法

Jar包功能概述

使用Spire系列的Jar包可以操作Word、Excel、PPT、PDF、Barcode等格式的文件,分别对应使用的jar包是Spire.Doc for Java、Spire.XLS for Java、Spire.Presentation for Java、Spire.PDF for Java、Spire.Barcode for Java。在导入相应的jar包后,即可操作相应的文档。

 

问题描述

但是,如果需要在一个程序中同时操作到包含上述提到的2个及以上文件格式时,将单个的jar同时导入Java程序,会报类似java.lang.NoSuchMethodError的错误

 

报错例子:

下面的代码中的操作需求是,在Excel工作表中插入一个Word文档格式的OLE对象,这里需要使用到的类包括Workbook/Worksheet(Spire.XLS提供的类)、Document(Spire.Doc提供的类),在程序中同时导入这两个jar后的报错,如图:

 

解决方法

删除原有导入的多个jar包,更换为导入 Spire.Office.jar 。

1.手动导入方法

  下载 Spire.Office for Java 包,解压,将lib文件夹下的Spire.Office.jar导入Java程序。

2.Maven程序配置pom.xml导入

复制代码
<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>http://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
    </repositories>
<dependencies>
    <dependency>
        <groupId> e-iceblue </groupId>
        <artifactId>spire.office</artifactId>
        <version>4.8.0</version>
    </dependency>
</dependencies>
复制代码

说明

Spire.Office for Java是Spire系列下Java平台产品的集合包,允许在一个程序中同时操作多种Spire产品支持的文件格式。如果在程序中导入的是单个产品的jar包,引起程序冲突,在编辑代码时不报错,会在程序运行时报错。

 

如果出现类似错误,可参考以上方法,将原有导入的多个单独的jar包更改为导入Spire.Office.jar这一个jar包就可以了。

 

—End—

 

posted @   E-iceblue  阅读(1331)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
历史上的今天:
2020-09-07 Java 如何给Word文档添加多行文字水印
2018-09-07 C# 批量删除Word超链接
点击右上角即可分享
微信分享提示