2017-12-25 13 views
2

私はJavaでExcelファイルを読み書きするためのApache POIを利用したい「のシンボルを解決できません」。 私はMavenを依存関係に使用していますが、インポートするときにエラーが発生します。たとえば、Cannot resolve symbol usermodelです。 のApache POI-:

これらは

は私の輸入です:

import org.apache.poi.ss.usermodel.Cell; 
import org.apache.poi.ss.usermodel.Row; 
import org.apache.poi.xssf.usermodel.XSSFSheet; 
import org.apache.poi.xssf.usermodel.XSSFWorkbook; 

これは私のPOMです:

<?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>Boekhouding</artifactId> 
<version>1.0-SNAPSHOT</version> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<dependencies> 
    <dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi-3.17</artifactId> 
     <version>3.10-FINAL</version> 
     <systemPath>${basedir}\src\lib\poi-3.17.jar</systemPath> 
    </dependency> 


    <dependency> 
     <groupId>org.apache.poi</groupId> 
     <artifactId>poi-ooxml</artifactId> 
     <version>${apache.poi.version}</version> 
     <systemPath>${basedir}\src\lib\poi-ooxml-3.17.jar</systemPath> 
    </dependency> 
</dependencies> 
</project> 

答えて

4

変更することで、あなたの依存関係。 これはソリューションに適しています。私はMavenを使用していない

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> 
<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>poi</artifactId> 
    <version>3.17</version> 
</dependency> 
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --> 
<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>poi-ooxml</artifactId> 
    <version>3.17</version> 
</dependency> 
+0

。しかし、この答えはまったく正しいものではありません。 1.これは、[最新の安定版リリース](https://poi.apache.org/download.html)を使用する代わりに、かなり古い 'apache poi'バージョンを使用することを示唆しています。 2.バージョン3.7と3.9のミックスを提案します。しかし、これは[サポートされていません](https://poi.apache.org/faq.html#faq-N10204)です。 –

+0

実際には今のところ働いていますが、まったく正しいです。私は答えを更新します。 – krezus

+2

あなたの提案をお試しいただけますか?あなたはXSSF-Excel XLSXにはpoi-ooxmlが必要でpoiには含まれていないのでpoi-ooxmlにpoi-ooxmlを追加する必要があります。しかし、あなたは** 1 **バージョンのものだけを必要とします、現在はバージョン3.17です。説明のために –