2017-03-09 96 views
0

我试图运行此代码:的Apache POI的NoClassDefFoundError而阅读Excel文件

public class ExcelSimpleTest { 
    public static void main(String[] args) throws Exception { 
      File f = new File("C:\\Users\\yaron\\Desktop\\Test.xlsx"); 
      FileInputStream fis = new FileInputStream(f); 

      XSSFWorkbook wb=new XSSFWorkbook(fis); 
      Sheet sheet=wb.getSheetAt(0); 
      System.out.println(sheet.getRow(0).getCell(0).getStringCellValue()); 
    } 

} 

和我得到这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections4/ListValuedMap 
    at src.ExcelSimpleTest.main(ExcelSimpleTest.java:22) 
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections4.ListValuedMap 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 1 more 

我在网上查了,并复制了Apache POI文件并不明白我的问题是什么。

回答

6

它看起来像你想念classpath中的commons-collection4.jar。下载并将其添加到您的类路径中。如果您使用maven,您可以添加

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 --> 
<dependency> 
    <groupId>org.apache.commons</groupId> 
    <artifactId>commons-collections4</artifactId> 
    <version>4.1</version> 
</dependency> 

到您的pom。

如果没有,你可以下载它here

+0

是的这个文件丢失thx! –

相关问题