我正在使用 Apache POI 读取一些 Excel 文件。我创建了一个控制台应用程序来完成这项工作,之后我尝试将代码集成到 Spring MVC webApp 中(我知道这没什么特别的)。我已将相同的 Jar 文件包含到我的 Classpath 中,但每当我尝试运行代码时,我都会收到此错误:
java.lang.NoClassDefFoundError : org/apache/poi/ss/usermodel/Font
我相信类 Font 是在编译时找到的,但不是在运行时。我很确定问题不在于 ClassPath,但我不知道如何解决这个问题。
编辑:当我使用 main 方法(在同一个 Web 项目中)在新类中复制相同的代码,并将我的 Web 应用程序作为控制台 Java 应用程序运行时,它可以工作。
最佳答案
要解决此问题,请执行以下操作:
1 - 检查您的 Pom.xml 是否不包含任何 Apache POI 依赖项。
2 - 从您的 Maven 存储库中删除 poi 文件夹。
3 - 以 maven clean 的方式运行你的项目
4 - 更新项目
5 - 再次导入你的 poi Jars 到你的类路径
6 - 奔跑并享受
关于Java.lang.NoClassDefFoundError : org/apache/poi/ss/usermodel/Font 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23568253/