本文刚才用javac -classpath... CityBean.java是没有产生上面所说的目录的,直接就是我想要的结果:
WEB-INF
  classes
    city
      citybean.class
    common
      DbConnection.class但为什么jcreate会这样呢?

解决方案 »

  1.   

    JCreator编译java文件时会在当前目录下按你的包定义生成子文件夹,包的层次就是文件夹的层次,但并不是说你自己可以任意添加文件夹就可以按包的格式来访问类。
    如你所说,你的citybean.java放在classes\city下,而它的包是city,因此会在classes\city下创建city文件夹,形成classes\city\city\目录结构,这里才存放你的class文件,但是你的当前目录仍然是classes\city.citybean.java中的import common.DbConnection;相当于在classes\city下找common下的DbConnection.class文件,而且DbConnection.class文件的源文件一定是package common;没有这个也是不行的。因此你应该把你原来生成的classes\common\DbConnection.class连同common这个文件夹一块儿拷过来才能用。
    你如果看过jdk的源代码就知道了,里面就是使用的这种机制。
      

  2.   

    谢谢!本人刚才用javac -classpath... CityBean.java是没有产生上面所说的目录的,直接就是我想要的结果:
    WEB-INF
      classes
        city
          citybean.class
        common
          DbConnection.class但为什么jcreate会这样呢?