0

引入了JSON相关依赖包(以下)

clipboard.png

clipboard.png

clipboard.png

clipboard.png

clipboard.png

同时我也能看到net/sf/ezmorph/Morpher这个类(虽然它是个接口)

clipboard.png

为什么在执行下述方法的时候,仍然报错:java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher

    //接受参数
    HttpServletRequest request = ServletActionContext.getRequest();
    HttpServletResponse response = ServletActionContext.getResponse();
    request.setCharacterEncoding("UTF-8");
    //传输json格式对象
    response.setContentType("application/json;charset=UTF-8");
    String t_name=request.getParameter("name");
    System.out.println(t_name);
    //使用Map类型数据用于转换成json对象
    Map<String,String> about_book=query(t_name);
    System.out.println("函数调用后查询结果是否为空:"+about_book.isEmpty());
    JSONObject jo=JSONObject.fromObject(about_book);
    System.out.println("发送的json对象为:"+jo.toString());

这些语句写在exetute()方法中,实际上,当运行到JSONObject jo=JSONObject.fromObject(about_book);已停止继续执行,这一句在Myeclipse上并没有报错,但是在实际运行.jsp页面后,可以从响应中(欲使用jsonajax)看到错误消息如下:

clipboard.png

但是所有依赖包均已导入了,请问这是什么原因造成的?

C1erman 12
2018-10-11 提问
2 个回答
0

查找一下是否有Morpher这个类。或者clean再build重新编译下

0

在看到一篇文章后,想到会不会是由于classPath问题导致的,并且发现了自己的粗心:myEclipse中自己提供了ezmorph-1.0.3.jar,在打开这个包后,我发现其内容与向前我所下载、但却放置在其它位置的ezmorph-1.0.6.jar大体上别无二致。这更加坚定了我的上述想法。于是,我就将myEclipse提供的ezmorph-1.0.3.jar包导入到了项目文件之中,功能流程便可实现。

撰写答案

推广链接