正在看《Core   Java》。第4章有一个关于Package的例子:   
  文件目录结构是:   
  .(current   directory)   
  |-   PackageTest.java   
  |-   com/   
  ......|-   horstmann/   
  .............|-corejava/   
  ...................|-Employee.java   
  ///////////////////////////////////////////////////////////////   
  //PackageTest.java:   
  import   com.horstmann.corejava.*;   
    
  public   class   PackageTest   {   
  }   
    
  //////////////////////////////////////////////////////////////   
  //Employee.java:   
  package   com.horstmann.corejava;   
  import   java.util.*;   
  public   class   Employee{   
  }   
    
  在包含PackageTest.java文件的目录中运行:javac   PackageTest.java   
  出错:   
  C:\PackageTest>javac   PackageTest.java   
  PackageTest.java:1:   软件包   com.horstmann.corejava   不存在   
  import   com.horstmann.corejava.*;   
  ^   
  PackageTest.java:6:   找不到符号   
  符号:   类   Employee   
  位置:   类   PackageTest   
                                  Employee   harry   =   new   Employee("Harry   Hacker",   50000,   
                                  ^   
  PackageTest.java:6:   找不到符号   
  符号:   类   Employee   
  位置:   类   PackageTest   
                                  Employee   harry   =   new   Employee("Harry   Hacker",   50000,   
                                                                            ^   
  3   错误   
    
  请问哪里错了? ========================
原文 网址
http://topic.csdn.net/t/20061219/22/5242383.html#r_38476770========================出错原因: 《Core   Java》 有个练习 在当前文件夹内有个 Employee.java
与 一样
  |-   com/   
  ......|-   horstmann/   
  .............|-corejava/   
  ...................|-Employee.java   这个问题, 是关于 javac编译时,寻找路径时,出现的问题,不知道不是不Bug ? 
明明 已经 
import   com.horstmann.corejava.*;
jdk 1.6 了还没有改好?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【happy115】截止到2008-08-02 19:29:05的历史汇总数据(不包括此帖):
    发帖的总数量:0                        发帖的总分数:0                        每贴平均分数:0                        
    回帖的总数量:0                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:---------------------结分的百分比:---------------------
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=happy115
      

  2.   

    你把Employee也编译成class文件,再回来运行PackageTest试试!
    我估计是jdk不能找到它所能识别的class文件而造成的错误。
      

  3.   

    这就是你手动编译的不方便之处。。eclipse就是这点方便。。你把你的  com.horstmann.corejava 这个包的路径加到classpath里面 。 就能找到了。很是麻烦。。而且classpath写到最后会变得很臃肿。 这只是了解让你了解原理就好。
      

  4.   

    可能是你的没有手动的创建软件包 com.horstmann.corejava,
    所以才会给出软件包没有创建的错误提示,你可以在你C盘PackageTest目录下
    手动的创建这个软件包,然后在试着运行一下,应该没问题的,我自己试过了。祝运行成功!  
      

  5.   

    javac -d . PackageTest.java   应该这样吧
      

  6.   

    源文件,应该放在包对应的目录下,然后再在这个目录下执行javac 
    或者你到一个eclipse下去实验这个东东,你就明白是怎么回事了,你先要建立这个包,然后你在源文件中才能引用这个包
      

  7.   

    用了 eclipse以后  手动操作的全忘了
      

  8.   

    环境变量classpath里面设置里面没有".","."代表的是在当前目录,