java操作iText创建PDF文件 抛出异常Exception in thread "main" java.lang.NullPointerException

刚学IText相关操作,一直找不到解决办法,求教!

import java.io.File;
import java.io.IOException;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;

public class HolleWorld {
    public static final String DEST = "HolleWord.pdf";

    public static void main(String args[]) throws IOException {
        File file = new File(DEST);
        file.getParentFile().mkdirs();             //创建目录
        new HolleWorld().createPdf(DEST);        //生成文件
    }

    public void createPdf(String dest) throws IOException {
        //Initialize PDF writer
        PdfWriter writer = new PdfWriter(dest);

        //Initialize PDF document
        PdfDocument pdf = new PdfDocument(writer);

        // Initialize document
        Document document = new Document(pdf);

        //Add paragraph to the document
        document.add(new Paragraph("Hello World!"));

        //Close document
        document.close();
    }
}

以下是抛出完整异常代码

Exception in thread "main" java.lang.NullPointerException
at iText.HolleWorld.main(HolleWorld.java:16)

    File file = new File(DEST);
    file.getParentFile().mkdirs();             //创建目录
    new HolleWorld().createPdf(DEST);
看看这里的路径和权限是否有问题

试下用free spire.pdf for java 来创建呢,具体代码参考 https://www.e-iceblue.cn/pdf_java_document_operation/create-pdf-in-java.html

这是空指针异常,说明没有值,结合报错信息,应该是DEST的问题,你的DEST是string类型,但是你又加了final,final修饰常量,string不是常量哦,个人理解,仅供参考

加上盘符就解决了