Java org.apache.poi中的异常

Java org.apache.poi中的异常,java,excel,apache-poi,Java,Excel,Apache Poi,我试图编写一个程序,它可以读写.xlsx文件,下面提供的代码旨在编写它的第一个excel程序 package excel_reader; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hss

我试图编写一个程序,它可以读写
.xlsx
文件,下面提供的代码旨在编写它的第一个excel程序

package excel_reader;

import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class ExcelWriter{

    public static void main(String[] args) throws IOException {
        HSSFWorkbook workbook = new HSSFWorkbook();
        // first sheet create
        HSSFSheet sheet = workbook.createSheet("FirstExcelSheet");
        // first row create - 1
        HSSFRow row = sheet.createRow(0);
        // first cell create - 1
        HSSFCell cell = row.createCell(0); // A-1
        // give data into A-1 cell
        cell.setCellValue("Tester");

        // Output as an excel file
        workbook.write(new FileOutputStream("D:\\book1.xlsx"));
        workbook.close();
    }
}
不知怎的,它无法在我提供的excel表上写下,请帮助我

错误代码:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/math3/util/ArithmeticUtils
        at org.apache.poi.poifs.property.RootProperty.setSize(RootProperty.java:59)
        at org.apache.poi.poifs.property.DirectoryProperty.<init>(DirectoryProperty.java:52)
        at org.apache.poi.poifs.property.RootProperty.<init>(RootProperty.java:31)
        at org.apache.poi.poifs.property.PropertyTable.<init>(PropertyTable.java:58)
        at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:102)
        at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:124)
        at org.apache.poi.hssf.usermodel.HSSFWorkbook.write(HSSFWorkbook.java:1373)
        at excel_reader.ExcelWriter.main(ExcelWriter.java:25)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.math3.util.ArithmeticUtils
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        ... 8 more
线程“main”java.lang.NoClassDefFoundError中的异常:org/apache/commons/math3/util/arithmetricutils 位于org.apache.poi.poifs.property.RootProperty.setSize(RootProperty.java:59) 位于org.apache.poi.poifs.property.DirectoryProperty(DirectoryProperty.java:52) 位于org.apache.poi.poifs.property.RootProperty。(RootProperty.java:31) 位于org.apache.poi.poifs.property.PropertyTable。(PropertyTable.java:58) 位于org.apache.poi.poifs.filesystem.poifsffilesystem.(poifsffilesystem.java:102) 位于org.apache.poi.poifs.filesystem.poifsffilesystem.(poifsffilesystem.java:124) 在org.apache.poi.hssf.usermodel.HSSFWorkbook.write上(HSSFWorkbook.java:1373) 在excel_reader.ExcelWriter.main(ExcelWriter.java:25)上 原因:java.lang.ClassNotFoundException:org.apache.commons.math3.util.arithmetricutils 位于java.net.URLClassLoader.findClass(URLClassLoader.java:382) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:418) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 8个以上 通常,java.lang.NoClassDefFoundError:会在缺少所需的JAR时显示 检查是否已将commons-math3jar添加到构建路径,如果未添加,请添加下载或使用maven依赖项

如果您的是maven项目,则在pom.xml中添加此依赖项

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-math3</artifactId>
    <version>3.0</version>
</dependency>

org.apache.commons
commons-math3
3
通常,java.lang.NoClassDefFoundError:会在缺少所需的JAR时显示 检查是否已将commons-math3jar添加到构建路径,如果未添加,请添加下载或使用maven依赖项

如果您的是maven项目,则在pom.xml中添加此依赖项

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-math3</artifactId>
    <version>3.0</version>
</dependency>

org.apache.commons
commons-math3
3


您的类路径中缺少通用数学jar。@我明白了,但我想知道是否必须将依赖项添加到.xml文件中?您是否使用依赖项管理系统(例如maven)来设置项目?如果是这样的话,应该自动添加它,但是您的配置可能有问题(对于maven来说是pom.xml)。如果没有,您将不得不手动添加依赖项。@另外,我想知道,如何将XSSF添加到代码中,以便我的程序运行.xlsx文件?谢谢。@Hulk它在没有依赖项XD的情况下可以正常工作,但您可以看到我在上面的代码使用了HSSF,这意味着输出源将是.xls,但我希望程序能够在.xlsx中运行它,因此,我尝试使用XSSF,但我无法导入库并使用XSSF,您能帮我吗?请非常感谢。您的类路径中缺少通用数学jar。@我明白了,但我想知道是否必须将依赖项添加到.xml文件中?您是否使用依赖项管理系统(例如maven)来设置项目?如果是这样的话,应该自动添加它,但是您的配置可能有问题(对于maven来说是pom.xml)。如果没有,您将不得不手动添加依赖项。@另外,我想知道,如何将XSSF添加到代码中,以便我的程序运行.xlsx文件?谢谢。@Hulk它在没有依赖项XD的情况下可以正常工作,但您可以看到我在上面的代码使用了HSSF,这意味着输出源将是.xls,但我希望程序能够在.xlsx中运行它,因此,我尝试使用XSSF,但我无法导入库并使用XSSF,您能帮我吗?请非常感谢。它在没有依赖项XD的情况下工作,但是您可以看到我在上面使用HSSF的代码,这意味着输出源将是.xls,但我希望程序能够在.xlsx中运行它,因此,我尝试使用XSSF,但不知怎的,我无法导入库并使用XSSF,您能帮助我吗?请非常感谢。如果您的项目是maven项目,那么您可以直接从项目构建路径下载并添加到项目构建路径,然后在pom文件中添加此依赖项,并运行mvn安装
org.apache.poi poi ooxml 3.8
我明白了,但现在我似乎遇到了另一个问题,而线程“main”中显示了
异常java.lang.NoClassDefFoundError:org/apache/xmlbeans/XmlException
你能帮我吗?谢谢。另外,我必须指出我的项目的依赖关系吗?你能粘贴完整的堆栈跟踪吗?它在没有依赖关系XD的情况下可以工作,但是你看到我的代码上面使用了HSSF,这意味着输出源将是.xls,但我希望程序能够在.xlsx中运行,因此,我尝试使用XSSF,但不知何故,我无法导入库并使用XSSF,您能帮我吗?请非常感谢。如果您的项目是maven项目,那么您可以直接从项目构建路径下载并添加到项目构建路径,然后在pom文件中添加此依赖项,并运行mvn安装
org.apache.poi poi ooxml 3.8
我明白了,但现在我似乎遇到了另一个问题,而线程“main”中显示了
异常java.lang.NoClassDefFoundError:org/apache/xmlbeans/XmlException
你能帮我吗?谢谢。另外,我必须指出我的项目的依赖关系吗?你能粘贴完整的堆栈跟踪吗