大家好!我是超级菜鸟,刚用java,希望得到大家的帮助两个文件HelloMBean.java,Hello.java ,两个文件在一个目录下,Hello实现了HelloMBean接口,编译Hello时报错如下:D:\jmx>javac  Hello.java
Hello.java:2: 找不到符号
符号: 类 HelloMBean
public class Hello implements HelloMBean {
                              ^
1 错误说找不到HelloMBean类,可是它们在一个目录下啊,我先编译了HelloMBean,改在eclipse写这两个文件也是说找不到类HelloMBean,我加上了相同的package也不行,怎么回事?谢谢大家了! 代码如下:HelloMBean.java :
public interface HelloMBean {   public void setMessage(String message);   public String getMessage();   public void sayHello();
}Hello.java :public class Hello implements HelloMBean {
   private String message = null;   public Hello() {
      message = "Hello there";
   }   public Hello(String message) {
      this.message = message;
   }   public void setMessage(String message) {
      this.message = message;
   }   public String getMessage() {
      return message;
   }   public void sayHello() {
      System.out.println(message);
   }
}

解决方案 »

  1.   

    不要用packageclasspath 上加上‘.'
      

  2.   

    javac -classpath . *.java
      

  3.   

    好了!!谢谢二位 
    另外为什么不能加package呢?
      

  4.   

    可以加package,但是有package的时候处理起来麻烦一些。
      

  5.   

    先编译HelloMBean.java,生成HelloMBean.class,将HelloMBean.class和Hello.java放在同一目录下,javac Hello.java再java Hello就可以了。
      

  6.   

    假如加package hello,除了代码里要加package申明之外,你的两个源文件要放在hello这个目录下,编译的时候在hello外面用
    javac -classpath . hello/*.java 编译不过如果你用Eclipse,问题就不大了。你刚才说那两个源文件放在Eclipse里也不能编译,我还没想明白,我这里都是可以编译的。
      

  7.   

    norwolfli(小问题别找我,大问题我不会。) java Hello是不行的,楼主写的那个类不是可执行的类,没有public static void main(String[])方法 
      

  8.   

    在eclipse中,显示“HelloMBean为无法解析为类”,我加了package org.colkin.jmx; 
    文件都在目录src\org\colkin\jmx 下这该怎么解决呢?谢谢,我太菜了
      

  9.   

    好了,谢谢各位,刚才eclipse重启后还没有反应过来,过一会它就不显示了,原来即时在同一目录下还要在classpath里指定,谢谢大家的帮助,特别是jamesfancy!谢谢大家
      

  10.   

    java只认CLASSPATH环境,或者CLASSPATH虚拟机参数,不认当前目录的。
    如果你希望它把当前目录作为CLASSPATH的根,你可以把 . 加在CLASSPATH环境变量中,这样不管你在哪个目录,当前目录都是根了。