本人在测试java包访问权限时遇到了如下情况
package test1;  
  
public class Test1 {  
     void go(){  
        System.out.println("go");  
    }  
}  package test1;  
  
public class Test2 {  
  
    public static void main(String[] args) {  
        Test1 test = new Test1();  
        test.go();  
    }  
  
}  
package test2;  
  
import test1.Test1;  
  
public class Test12 {  
  
    public static void main(String[] args) {    
        Test1 test = new Test1();  
    }  
  
}  
分别将Test1和Test2存放于test1文件夹下,Test12存放于test2文件夹下,顺利编译通过,但是运行时都报出了
Exception in thread "main" java.lang.NoClassDefFoundError...

解决方案 »

  1.   

    试了一下并没有问题,可能你运行的不是Test12 
      

  2.   

    .
    ./test1/Test1.class
    ./test1/Test2.class
    ./test2/Test12.class
    ----------
    命令和输出大概是下面这样的:
    ----------java test1.Test2
    go
    java test2.Test12如果还是提示class找不到echo %CLASS_PATH%
    检查环境变量的 class path 设置,看里面有木有 .
      

  3.   

    是   echo %CLASSPATH%   木有下划线 ...
      

  4.   

    晕了,还是不行,jdk都已经卸载了重装重新配置过了
      

  5.   

    你是用命令行运行的么?你运行 java 命令是在哪个目录下运行的?
    你的 class 文件又在哪个目录下?
      

  6.   

    你的先找到class 文件生成那个文件下,然后用java命令把目录下的一个一个文件写在java命令后