获取ClassNotFoundException,即使我有正确的jar

时间:2014-06-16 15:15:28

标签: java maven apache-poi

这是来自我的pom.xml:

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.9</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.9</version>
    </dependency>

这来自我的错误消息:

java.lang.ClassNotFoundException: org.apache.poi.ss.usermodel.Workbook not 

found by poi-ooxml [355]

我在Spring Tool Suite上看不到任何错误消息(非常类似于Eclipse),并且已成功导入POI库。我真的不明白为什么我会收到这个错误。

此外,代码在OSGi包中运行,而poi jar则与其他包一起部署。

更新:好的我找到了一些东西:错误说:

java.lang.ClassNotFoundException: org.apache.poi.ss.usermodel.Workbook not 

found by poi-ooxml [355]

但我的Workbook.class是poi而不是poi-ooxml。我怎样让maven看到poi而不是poi-ooxml?

1 个答案:

答案 0 :(得分:1)

你的问题不是很清楚...... 发生此错误或maven时,您使用的是Eclipse吗?

通常,最好的办法是运行

mvn clean install

pom.xml 的主目录中,这将为您提供更多信息

通常当您遇到 ClassNotFoundException 等错误时,就意味着您错过了pom.xml中的依赖项。

浏览所有依赖项并检查pom中缺少的内容。