V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tiRolin
V2EX  ›  Java

使用 myeclipse 实现登录注册功能时发生 Java .lang.ClassNotFoundException.ClassNotFoundException(String s)错误,

  •  
  •   tiRolin · 2021-10-29 08:59:45 +08:00 · 1691 次点击
    这是一个创建于 1155 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新人初学 Java 只看了 B 站上杜杜老师的 Java 基础视频,想要做一个简单的图书管理程序来 实现登录注册功能的代码是直接扒下面的网址上的 https://blog.csdn.net/yangruxi/article/details/72455971 除了游戏那一部分我不需要所以我没扒以外,其他都依葫芦画瓢给弄好了 然后不知道为啥就运行的时候报错了 debug 指引出错的代码为 throw new ClassNotFoundException(name); 解释里的内容是: Open Declaration java.lang.ClassNotFoundException.ClassNotFoundException(String s)

    Constructs a ClassNotFoundException with the specified detail message.

    Parameters: s the detail message.

    我看了下这行代码是位于 src 文档里面 rt.jar 里的 Java.net 里 URLClassLoader 里 findClass(String):Class<?>下的

    通过百度找到了相关了问题,但是尝试了很多方法都没有结果,其中教程中很多解决方法我都还看不懂,唯一能使用的两个,都无疾而终

    这两个方法分别是 https://zhidao.baidu.com/question/871972065292501692.html 按照相同方法操作,在 add 部分后我没有找到 Maven Dependencies 用于添加 第二个是 https://blog.csdn.net/zrf1335348191/article/details/50773255 只有安装这一部分我能理解,于是去下载安装,但是在安装过程却发生无法安装的错误,尝试将 JDK 卸载之后重启再安装,仍然是无法安装 其他的类似错误的网址我都有去看,但是都不大能看懂,所以来问了,真心求高手帮忙,我着急于要将这个简单的东西做出来给我老师看

    13 条回复    2021-10-29 09:51:36 +08:00
    LeeSeoung
        1
    LeeSeoung  
       2021-10-29 09:03:32 +08:00
    先把你的代码贴上来
    siweipancc
        2
    siweipancc  
       2021-10-29 09:06:42 +08:00 via iPhone
    问题估计在依赖库动态加载,这样只能找源代码了
    tiRolin
        3
    tiRolin  
    OP
       2021-10-29 09:11:35 +08:00
    package library;

    import java.util.Scanner;

    import java.io.IOException;
    import java.util.Scanner;

    import com.edu.dao.impl.UserDaoImpl;
    import com.edu.domain.User;


    public class test {



    public static void main(String[] args) throws IOException {

    while (true) { //缺少一个大括号,后续需要补充


    Scanner sc = new Scanner(System.in);

    System.out.println("+------------------------------------------------------------+");
    System.out.println(" 欢迎使用图书管理系统!");
    System.out.println("+------------------------------------------------------------+");
    System.out.println(">>开始菜单");
    System.out.println("");
    System.out.println(" 1.查询图书");
    System.out.println(" 2.登录系统");
    System.out.println(" 3.退出系统");
    System.out.println("");
    System.out.println("+------------------------------------------------------------+");
    System.out.println("请输入选项前的数字选择功能");

    String choice = sc.nextLine();
    UserDaoImpl udi = new UserDaoImpl();

    //int i = 0;
    //Scanner r = new Scanner(System.in);
    //i=r.nextInt();

    switch( choice ){
    case "1" :
    System.out.println(1);
    break;
    case "2" :

    System.out.println("+------------------------------------------------------------+");
    System.out.println("");
    System.out.println(" 1.用户登录");
    System.out.println(" 2.管理员登录");
    System.out.println(" 3.退出系统");
    System.out.println("");
    System.out.println("+------------------------------------------------------------+");
    System.out.println("请输入选项前的数字选择功能");



    int u = 0;
    Scanner o = new Scanner(System.in);
    u=o.nextInt();

    switch( u ){
    case 1 :

    System.out.println("");
    System.out.println("登录功能未实现,默认登录成功");
    System.out.println("");

    System.out.println("+------------------------------------------------------------+");
    System.out.println("");
    System.out.println(" 1.借书");
    System.out.println(" 2.还书");
    System.out.println(" 3.退出系统");
    System.out.println("");
    System.out.println("+------------------------------------------------------------+");
    System.out.println("请输入选项前的数字选择功能");

    int num = 0;
    Scanner man = new Scanner(System.in);
    num=man.nextInt();

    switch( num ){
    case 1 :
    break;
    case 2:
    huanshu s = new huanshu();

    }
    case 2:
    System.out.println("");
    System.out.println("登录功能未实现,默认登录成功");
    System.out.println("");

    System.out.println("+------------------------------------------------------------+");
    System.out.println("");
    System.out.println(" 1.添加书籍");
    System.out.println(" 2.删除书籍");
    System.out.println(" 3.退出系统");
    System.out.println("");
    System.out.println("+------------------------------------------------------------+");
    System.out.println("请输入选项前的数字选择功能");


    case 3:
    System.exit(0);
    break;




    }

    break;


    case "3" :
    System.exit(0);
    break;
    default :

    }





    }

    }
    }



    @LeeSeoung 这是我的代码,其他的输入的包都跟我网址上给的一模一样,为了版面就不再贴了
    keyfunc
        4
    keyfunc  
       2021-10-29 09:16:05 +08:00
    作业自己做系列?
    另外少年,错误日志要贴全。。。
    nonoyang
        5
    nonoyang  
       2021-10-29 09:19:07 +08:00
    尝试下断点,一步步 debug?
    tiRolin
        6
    tiRolin  
    OP
       2021-10-29 09:23:33 +08:00
    @keyfunc 我甚至不知道什么是错误日志,我想截图给大家看看,但是这里似乎没法上传图片,所以我没有办法。我是大一新生想进入实验室,老师说给我一个月让我自己捣鼓出随便什么什么来,所以我在这里搞这些的,很多东西都还不懂,造成理解困难很抱歉
    cslive
        7
    cslive  
       2021-10-29 09:29:59 +08:00
    建议看些最基础的视频,从搭环境开始,然后开始第一个 hello word
    selca
        8
    selca  
       2021-10-29 09:30:31 +08:00
    建议把代码上传到 GitHub 或者 gitee
    sunjiayao
        9
    sunjiayao  
       2021-10-29 09:33:57 +08:00
    @tiRolin 我简单运行了一下你的代码暂时没发现问题。可以说下你 jdk 的安装方式和下载途径么?图片的话你可以自己找个图床上传然后把地址贴上来
    seedhk
        10
    seedhk  
       2021-10-29 09:36:07 +08:00
    java.lang.ClassNotFoundException.ClassNotFoundException(String s)

    检查下 Java 的环境变量
    aboat365
        11
    aboat365  
       2021-10-29 09:36:23 +08:00
    开头导入的这两行移除:
    import com.edu.dao.impl.UserDaoImpl;
    import com.edu.domain.User;

    main 方法中的这两行移除:
    UserDaoImpl udi = new UserDaoImpl();

    huanshu s = new huanshu();

    就可以运行了!
    根据习惯,类名首字母要大写。
    aboat365
        12
    aboat365  
       2021-10-29 09:38:56 +08:00
    +------------------------------------------------------------+
    欢迎使用图书管理系统!
    +------------------------------------------------------------+
    >>开始菜单

    1.查询图书
    2.登录系统
    3.退出系统

    +------------------------------------------------------------+
    请输入选项前的数字选择功能
    1
    1
    +------------------------------------------------------------+
    欢迎使用图书管理系统!
    +------------------------------------------------------------+
    >>开始菜单

    1.查询图书
    2.登录系统
    3.退出系统

    +------------------------------------------------------------+
    请输入选项前的数字选择功能
    2
    +------------------------------------------------------------+

    1.用户登录
    2.管理员登录
    3.退出系统

    +------------------------------------------------------------+
    请输入选项前的数字选择功能
    3
    statement
        13
    statement  
       2021-10-29 09:51:36 +08:00
    错误描述能描述成这样,建议好好学习一下基础和英语 (不是嘲讽诚心建议) 解决这样的错误很浪费时间而且没有成长。 你要学习了乘法口诀以后再做乘法,别用加法来做乘法 会浪费你大量有效时间
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2728 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:40 · PVG 20:40 · LAX 04:40 · JFK 07:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.