Java ApachePOI类在Intellij中构建,但不使用Maven

Java ApachePOI类在Intellij中构建,但不使用Maven,java,maven,apache-poi,Java,Maven,Apache Poi,我在Intellij 2017中的一个项目中添加了一个电子表格类,该项目使用Apache Poi库。起初,我在编译代码并使其在Intellij中运行时遇到问题。这似乎是一个依赖性问题,因为我添加了ApachePOI3.11,然后又回到了3.16,它能够以某种方式解析以前无法解析的类符号。我的第一个问题是为什么这样做有效 现在真正的问题是我试图用Maven构建项目,Maven也无法解析类和方法符号,比如getCellTypeEnum()、CellType和CellCopyPolicy,就好像它试图

我在Intellij 2017中的一个项目中添加了一个电子表格类,该项目使用Apache Poi库。起初,我在编译代码并使其在Intellij中运行时遇到问题。这似乎是一个依赖性问题,因为我添加了ApachePOI3.11,然后又回到了3.16,它能够以某种方式解析以前无法解析的类符号。我的第一个问题是为什么这样做有效

现在真正的问题是我试图用Maven构建项目,Maven也无法解析类和方法符号,比如getCellTypeEnum()、CellType和CellCopyPolicy,就好像它试图使用较旧版本的poi和poi ooxml一样

我已经尝试将3.11和3.16作为依赖项添加到poi和poi ooxml中,分别是3.11和3.16。我已经在.m2中查找了所有版本的poi库

这是我的pom,正如你可能知道的,我开始在那里扔东西,希望能解决这些符号,但它们显然是poi对象,而且我可以告诉maven使用任何依赖项的最新版本,所以同时使用旧的东西是行不通的

编辑:更新pom以包括poi草稿行和更改的依赖顺序

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>groupId</groupId>
<artifactId>versionFinderUI</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

<dependencies>

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.16</version>
    </dependency>

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

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

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-scratchpad</artifactId>
        <version>3.16</version>
    </dependency>

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

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

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.8.0</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.web.crawler.Main</mainClass>
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef>
                </descriptorRefs>
            </configuration>
        </plugin>
    </plugins>
</build>
</project>

4.0.0
groupId

进程已完成,退出代码为1


编辑:问题似乎像Intellij一样自行解决了。在搞乱了依赖项的顺序,添加了不需要的东西,等了一天,第二天又没有添加任何新的东西之后,它构建了。如果有人能回答为什么会发生这种情况,我会把这个问题留待考虑。

我认为你的软件包错了-你需要像
org.apache.poi
这样的东西放在前台对不起,你说的“前台”是什么意思?您的意思是更改依赖项的顺序吗?我现在已经这样做了,并添加了poi草稿行,我只发现了三个编译错误!我会更新这个问题。