用jxl.jar包运行失败,请教java高手,尤其用这个包处理Excel文件的大虾们,谢谢了!

来源:百度知道 编辑:UC知道 时间:2024/06/30 14:26:22
请教各位 java高手,在网上下载了jxl.jar,放在了jdk目录下的%JAVA_HOME%jre/lib/ext目录下,并在classpath中加了%JAVA_HOME%jre/lib/ext/jxl.jar,调式一段代码,编译通过,但在运行.class的时候总是报错
Exception in thread "main" java.lang.NoClassDefFoundError: jxl/Workbook
at ReadExcel.readExcel(ReadExcel.java:17)
at ReadExcel.main(ReadExcel.java:62)
应该不是代码问题,因为我换一段代码也是报类似的错误,那位高手能帮我看看,是不是配置方面有问题,还是我下的jxl.jar有问题
代码如下(网上down的):
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import jxl.Cell;
import jxl.CellType;
import jxl.Sheet;
import jxl.Workbook;

public class ReadExcel
{
public void readExcel()
{
try {
//构建Workbook对象, 只读Workbook对象
//直接从本地文件创建Workbook //从输入流创建Workbook
File file = new File("D:/cn/测试.xls");//"E:/temp/HodeOA_2005/Book1.xls");
InputStream is = new FileInputStream(file);
Workbook rwb = Workbook.getWorkbook(is);

//获得工作薄(Workbook)中

既然能编译通过,那么运行也应该能通过。请注意编译和运行环境相同。
这应该是jxl.jar包未在classpath路径中或者设置有错误。jxl不一定需要在jre的ext目录,如果你的编译环境是Eclipse等IDE环境,那么运行不会有问题的。如果是命令行运行java ReadExcel,那么可以这样执行java -cp [你的jxl目录]/jxl.jar ReadExcel

弱弱的问一句,你的"/"是不是应该是"\"...我记得环境变量好是这个方向的斜杠...

用jar还得注册太麻烦,告诉你一个比较懒省事的方法,

1. 把你的jxl解压,把里面的,把里面的文件夹jxl拷到你的class文件夹根目录

2. 然后直接调用

比如:

你的class叫 d:\haha\my.class
然后直接把解出来的jxl放到d:\haha\

然后在my.java 中调用 import jxl.*;

就差不多了,你可以写一个空类,只import,看看会不会报错,不断调度直接到路径正确为止