日期:2014-05-20  浏览次数:20710 次

菜鸟求高手解答
假设在子目录c:\javatest\ex\ch04下建立如下文件:
//A.java
package ex.ch04;
public class A
{
  public A() { }
}
然后,在子目录c:\javatest\ex\ch04\main下建立如下文件:
  //B.java
  package ex.ch04.main;
  import ex.ch04.*;
  class B
  {
  public static void main(String args[])
  {
  A a=new A();
  }
  }

编译B.java为什么会出现 “找不到符号”的信息?
小弟刚入门,求高手解答。

------解决方案--------------------
探讨

引用:

环境变量classpath下面把路径添加上去。也就是c:\javatest\ex\,注意添加的时候在前一句前面添加英文下半角符号“;”跟c:\javatest\ex\分隔开。然后执行你的B程序就可以了
还是不行,还是原来一样找不到符号: B.java:6:找不到符号,
……

------解决方案--------------------
我来回答下吧,虽然是新手,我这几天也在纠结这些东西。

第一,你B.java里面有导入包,则必须将包的路径设置到classpath里面,在环境变量里面设置吧。添加这个路径进去,记住必须加分号,c:\javatest\ex\ch04
第二,然后在编译A.java
第三,最后编译B.java,再执行B,此时因为B类也进行了打包,执行B的时候记得加上包名,既
java ex.ch04.main.B