Обязательные maven-зависимости для работы Apache POI - PullRequest
24 голосов
/ 20 ноября 2011

Я хочу использовать библиотеку Apache POI для анализа файлов Excel (старые версии и более новые версии Excel).Поэтому мне было интересно, какие банки мне нужно включить из Apache POI, потому что по следующей ссылке:

http://mvnrepository.com/artifact/org.apache.poi

Я обнаружил, что нужно включить много банок, нужно ли их включатьвсе?

Если да, то какая последняя стабильная версия должна быть включена и работает ли она с Microsoft Office 2010?

Ответы [ 9 ]

38 голосов
/ 20 ноября 2011

Нет, вам не обязательно включать все зависимости POI .Механизм транзитивной зависимости Maven позаботится об этом.Как отмечалось , вы просто должны выразить зависимость от соответствующего артефакта POI.Например:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>3.8-beta4</version>
</dependency>
9 голосов
/ 24 марта 2014

Для писателя Excel вам может понадобиться следующее:

            <dependency>
              <groupId>org.apache.poi</groupId>
              <artifactId>poi</artifactId>
              <version>3.10-FINAL</version>
           </dependency>


        <dependency>
             <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>${apache.poi.version}</version>
       </dependency>
3 голосов
/ 13 мая 2017

У меня работает следующее:

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.16</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.16</version>
    </dependency>
1 голос
/ 23 декабря 2014
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.10-FINAL</version>
    </dependency>
1 голос
/ 02 декабря 2014

Я использовал следующую зависимость.Если вы используете Selenium, тогда хорошо использовать их все, как показано ниже.В противном случае вы увидите некоторые ошибки, а затем выполните повторное исправление и добавьте еще несколько зависимостей.

<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>
          <dependency>
                 <groupId>org.apache.poi</groupId>
                 <artifactId>poi-ooxml-schemas</artifactId>
                 <version>3.9</version>
          </dependency>
          <dependency>
                 <groupId>org.apache.poi</groupId>
                 <artifactId>poi-scratchpad</artifactId>
                 <version>3.9</version>
          </dependency>
          <dependency>
                 <groupId>org.apache.poi</groupId>
                 <artifactId>ooxml-schemas</artifactId>
                 <version>1.1</version>
          </dependency>

          <dependency>
                 <groupId>org.apache.poi</groupId>
                 <artifactId>openxml4j</artifactId>
                 <version>1.0-beta</version>
          </dependency>
0 голосов
/ 12 апреля 2017

это список идентификаторов артефактов maven для всех компонентов poi.по этой ссылке http://poi.apache.org/overview.html#components

0 голосов
/ 14 декабря 2016

Добавьте эту зависимость для работы с Apache POI

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>3.16-beta1</version>
 </dependency>
0 голосов
/ 17 сентября 2014

Если вы не используете Maven, вам понадобится **

  • пои
  • пои-OOXML
  • XMLBeans
  • dom4j
  • пои-OOXML-схемы
  • StAX-апи
  • OOXML-схемы
0 голосов
/ 20 мая 2014

ooxml для работы с файлами .xlsx, а ooxml ссылается на xml, поэтому нам нужно будет сослаться на три приведенные ниже зависимости в файле pom.xml для

<dependency>
   <groupId>org.apache.poi</groupId>
   <artifactId>poi</artifactId>
   <version>3.9</version>
</dependency>
<dependency>
   <groupId>xml-apis</groupId>
   <artifactId>xml-apis</artifactId>
   <version>1.4.01</version>
</dependency>
<dependency>
   <groupId>org.apache.poi</groupId>
   <artifactId>poi-ooxml</artifactId>
   <version>3.9</version>
   <exclusions>
     <exclusion>
       <artifactId>xml-apis</artifactId>
       <groupId>xml-apis</groupId>
     </exclusion>       
   </exclusions>
</dependency>
...