在eclipes环境下 在D:/java下新建一个项目www在项目下新建一个包unit1
在同一个包下面三个个源文件 分别是 
package unit1;public class MainClass{ /**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("你好,只需要编译我");
A a=new A();
a.fA();
                B b=new B();
                b.fB(); }}
package unit1;public class A{
void fA(){
System.out.println("I am A");
}}package unit1;public class B{
void fB(){
System.out.println("I am B");
}}在Dos环境下 D:/java/www/src/unit1中编译javac MainClass.java
为什么出现找不到符号  类A 找不到的符号  类B的错误
而在Eclipes下就可以直接运行???

解决方案 »

  1.   

    打开Eclipse的open run dialog,你就可以发现它已经帮你设置好了一些选项.
    你可以将其导出成jar包,然后在jar的目录中,从dos中输入命令 
    java -jar unit1.MainClass
    就可以运行
      

  2.   

    把后面的2个“package unit1;"去掉
    package unit1;public class MainClass{/**
    * @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    System.out.println("你好,只需要编译我");
    A a=new A();
    a.fA();
                    B b=new B();
                    b.fB();}}public class A{
    void fA(){
    System.out.println("I am A");
    }}public class B{
    void fB(){
    System.out.println("I am B");
    }} 
      

  3.   

    既然你前面有了package unit1; 
    那么你就应该在D:/java/www/src目录下编译javac MainClass.java
    因为你的类前面已经导入包了,所以就不要进入这个目录去编译了.
      

  4.   

    已经package unit了
    你又在unit目录下java,那就是src/unit/unit/A.java了,当然找不到这个文件阿
      

  5.   

    问题是我在src目录下运行 javac MainClass.java
    它要提示 无法读取MainClass.java
      

  6.   

    我将 A类跟B类的package 去掉
    在unit1下运行找不到符号  A  B
    在eclipe下的www项目下的src文件下运行
    无法读取到MainClass.java