无法加载jxls变换器

时间:2015-12-13 14:01:49

标签: java apache apache-poi classpath jxls

我的项目有什么问题。我已经导入了所有依赖项,但仍然输出错误:

Output errors

以下是我导入的列表依赖项: Dependancies package image

这是我的测试代码:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package brouillon;

import controllers.RetardJpaController;
import entites.Retard;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import javax.persistence.Persistence;
import org.jxls.common.Context;
import org.jxls.util.JxlsHelper;

/**
 *
 * @author Vals
 */
public class Brouillon {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException {
        // TODO code application logic here
        RetardJpaController ctr = new RetardJpaController(Persistence.createEntityManagerFactory("BrouillonPU"));
        List<Retard> liste = ctr.findRetardEntities();
        try(InputStream is = Brouillon.class.getResourceAsStream("ressources/object_collection_template.xls")) {
            try (OutputStream os = new FileOutputStream("object_collection_output.xls")) {
                Context context = new Context();
                context.putVar("retards", liste);
                //JxlsHelper.getInstance().processTemplate(is, os, context);
                JxlsHelper jh = JxlsHelper.getInstance();
                jh.processTemplate(is, os, context);
            }
        }
    }

}

1 个答案:

答案 0 :(得分:-1)

这对我来说并不合适:

    try(InputStream is = Brouillon.class.getResourceAsStream("ressources/object_collection_template.xls")) {

请注意拼写错误:"ressources"。这在查找中足够了。尝试取出第二个&#39;并看看它是否有效。

可能比这更糟糕。如果资源是代码源,那么它的内容将在CLASSPATH中,但文件夹本身不会。在这种情况下,您只需要文件名。

尝试查看您在运行时使用的CLASSPATH,并查看其中的内容。那将说清楚。

&#34;我已经导入了所有依赖项&#34; - 这是你最大的问题。大多数初学者和缺乏经验的程序员都会成为这种态度的牺牲品。我已经做好了一切 - 为什么计算机会迫害我?&#34;如果采取一种始于和结束的态度,你会更快地得到更快的结果。我做错了什么?&#34;并且无情地检查你的错误。