这是来 self 的 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?
最佳答案
你的问题不太清楚... 出现这个错误时你使用的是Eclipse还是maven?
通常,最好的办法就是运行
mvn clean install
在pom.xml的主目录中,这将为您提供更多信息
通常,当您遇到诸如 ClassNotFoundException 之类的错误时,这意味着您错过了 pom.xml 中的依赖项。
检查所有依赖项并检查 pom 中缺少的内容。
关于java - 即使我有正确的 jar,也会出现 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24246924/