类路径似乎正确,但JVM仍然无法找到或加载主类

时间:2014-11-10 20:31:04

标签: java class main

我对编程和java相对较新,我正在尝试学习如何从命令行创建用户定义的包。我得到以下内容:Error: Could not find or load main class TestPhone。我已审核过有关此类错误的帖子,包括评论良好的帖子here。该帖子列出了JVM运行java程序的4个步骤:

  1. 搜索课程的编译版本。
  2. 加载课程。
  3. 检查班级是否有main方法,签名为static void main(String[])
  4. 调用该方法将命令行参数作为String[]传递给它。
  5. 显然,我的JVM因为某些原因找不到我的TestPhone.class。这是我的目录结构:

    enter image description here

    我的classpath设置如下:

    enter image description here

    我的类包含来自Mala Gupta的简单代码,用于测试类变量的可访问性:

    package mobile;
    class Phone {
        static boolean softKeyboard = true;
    }
    
    
    package mobile;
    class TestPhone {
        public static void main (String[] args) {
            Phone.softKeyboard = false;
    
            Phone p1 = new Phone();
            Phone p2 = new Phone();
    
            System.out.println(p1.softKeyboard);
            System.out.println(p2.softKeyboard);
    
            p1.softKeyboard = true;
    
            System.out.println(p1.softKeyboard);
            System.out.println(p2.softKeyboard);
        }
    }
    

    知道为什么它找不到我的课程吗?非常感谢。

    系统规格: Java版本1.8.0 Javac 1.8.0 在32位操作系统上获胜7

2 个答案:

答案 0 :(得分:3)

java application launcherjava需要该类的完全限定名称mobile.TestPhone../mobile目录不必位于类路径中。

答案 1 :(得分:-1)

您位于cmd中的myJavaProject文件夹中。

尝试转到c:\ myJavaProject \ mobile然后它应该可以工作,因为你的类不在移动设备中 myJavaProject文件夹