我在编译JAVA文件的时候  用了输出目录参数。javac -d D\:www Test.java
Test2类中声明了Test的类型
Test和Test2 中都有语句package a.b;
然后编译Test2.java 用命令 javac -d D\:www Test2.java
编译的时候提示错误找不到Test类型
Test 和 Test2 两个类不是在同一个包中吗 为什么找不到Test类???

解决方案 »

  1.   

    如果你的包结构如下:src下com.karl.test 下面有Test,Test2两个Java类
    那么你应该先通过cd(windows)进入到src目录下,然后使用javac   -d   .(.表示当前目录,或者自己指定相对路径/绝对路径)   (必须加上com/karl/test/)Test.java (指明目录)
      

  2.   

    1 java_home配置没?
    2 在命令行进入java文件所在包没?
    3 javac   -d   D\:www   Test.java 有错误,应该是D:/www,还要保证D:/www文件夹存在
      

  3.   

    试着用下面的命令:
    javac -classpath .;D:\www  -d  D\:www  Test.java
      

  4.   

    package testFile;
    class Test
    {
    ...
    }
    保存上面文件到一个新建的文件夹内  
    文件夹取名“testFile”
    代码文件取名“Test.java”
    package testFile;
    class Test2
    {
       public static void main(String [] args)
        {
          Test one=new Test();
         .....
         }
    }
    此文件同样保存到上面的文件夹“testFile”内
    取名为“Test2.java”
    在控制台进入相应的目录 的上一目录 即testFile 的上目录
    javac .\testFile\Test2.java
    java testFile.Test2
    注意这两条命令的格式
      

  5.   

    到那里去看我贴的文章,看后会清楚的.http://topic.csdn.net/u/20071210/18/f2300b66-afee-4f47-8b89-9b62cd8a8237.html
      

  6.   

    by226t 说得已经很清楚了。
    同时我建议你自己先把test2中关于test方面的内容给屏蔽掉
    先把test2给编译通过,然后再test的内容一起来测。
      

  7.   

    这个问题我已经解决了,谢谢大家回的贴。 主要是因为classpath的问题 还是cursor_wang的回帖比较贴近问题的原因