2014-05-09 78 views
4

我使用Apache POI来读取一些Excel文件。我创建了一个控制台应用程序来完成这项工作,在那之后我一直试图整合在Spring MVC的Web应用程序代码(没有什么特别的,我知道)。我已经包含了相同的jar文件我的Classpath,但每当我试图运行的代码,我得到这个错误:Java.lang.NoClassDefFoundError:org/apache/poi/ss/usermodel/Font

java.lang.NoClassDefFoundError : org/apache/poi/ss/usermodel/Font 

我相信类字体是在编译时发现的,而不是在运行。我很确定问题不在ClassPath,但我无法弄清楚如何解决这个问题。

编辑:当我复制相同的代码在main方法(在同一个web项目)的新类,并运行我的web应用程序的控制台Java应用程序,它的工作原理。

+1

你加JAR运行路径? – Kakarot

+0

是的! jar文件已正确添加到BuildPath中... – TheByeByeMan

+0

您是如何构建应用程序的? Maven,常春藤/ IDE或命令行。 –

回答

2

为了解决这个问题,做到以下几点:

1 - 检查你的pom.xml不包含任何的Apache POI依赖。

2 - 从Maven仓库中删除POI文件夹。

3 - 运行项目作为清洁行家

4 - 更新项目

5 - 导入您再POI罐子到类路径

6 - 奔跑,享受