首页 > 解决方案 > Apache POI 加载 xlsx - 包不存在并且无法使用 maven 找到符号

问题描述

我正在尝试使用 apache POI lib,在 Java 程序中加载 xlsx 文件。

根据这里的文档https://poi.apache.org/components/我从以下组件开始(我使用的是 maven)

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

    

但我遇到了一些问题

java: package org.apache.poi.ss.usermodel does not exist

java: cannot find symbol
symbol:   class Workbook

java: cannot find symbol
symbol:   class Sheet

java: cannot find symbol
symbol:   class Row

遵循其他一些stackoverflow建议,我添加了其他依赖项,最终尝试了所有这些但仍然无法正常工作

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

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-scratchpad</artifactId>
        <version>5.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml-full</artifactId>
        <version>5.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml-lite</artifactId>
        <version>5.0.0</version>
    </dependency>

还是行不通

我正在使用开放的 JDK 15,也尝试了 11,没有变化

有什么建议吗?

标签: javamavenapache-poixlsx

解决方案


结果是 IntelliJ 问题:mvn 编译正确,但通过 intellij 运行也不是重建解决了问题

唯一的出路是:

  1. 关闭项目
  2. 取消 .idea 文件夹
  3. 重新导入项目

推荐阅读