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