包和目录是有区别的,应该这样写:
F:\> javac mypack.B.java

解决方案 »

  1.   

    你的a.java和b.java在那里?  
    你的mypack\下面不是已经有b.class了吗?
      

  2.   

    包和目录具体有什么区别呢?为什么应该像这样写F:\> javac mypack.B.java
      

  3.   

    是希望在mypack下编译生成b.class
      

  4.   

    mypack.B.java才是完整的类名,只有在类中编辑时,import mypack后,才可以使用B.java,如果你用F:\mypack> javac B.java的写法,其实不只是A.java找不到,而且连B.java也找不到,只是因为在B.java中先导入A.java,所以出现错误:找不到A.java.
      

  5.   

    import的意思是 先将classpath包含的一个或多个目录,用作查找.class文件的根目录.从根目录开始,编译器活的包的名称,并将每个句点换成反斜扛,以产生一个路径名称.
    而你这里的 classpath有一个是.即当前目录,而你F:\mypack> javac B.java这样的话,怎么能找到a.class.
      

  6.   

    ^_^.import的意思是: classpath包含一个或多个目录,用作查找.class文件的根目录.从根目录开始解释器活的包的名称并将每个句点替换成反斜扛.从而获得一个路径名称.你import package.a的话,假设你现在在F:\mypack 下,则a.class应该在 F:\mypack\mypackage\a .所以你的就是错的了.
    ^_^,楼上的解释的有些问题,import的是a.class,不是a.java.