java设置实现接口的类的类路径

时间:2013-06-27 19:59:49

标签: java classpath

我编译这些java文件时遇到了问题。我有一个类MeterMovementService.java和一个接口MeterMovementServiceMBean.java。该类正在实现此接口。我首先编译了接口。类和接口都在同一个包中。但是当我尝试编译类时,它会给出错误:

MeterMovementService.java:2: error: cannot find symbol
public class MeterMovementService  implements MeterMovementServiceMBean
                                              ^
  symbol: class MeterMovementServiceMBean
1 error

以下是MeterMovementService.java类的代码

我的类没有依赖。它只是实现了接口。

  public class MeterMovementService  implements MeterMovementServiceMBean {
   private String message = "Sorry no message today";
   public String getMessage(){
      return message;
   }
   public void setMessage(String message){
      this.message = message;
   }
   public void printMessage(){
      System.out.println(message);
   }
   public void start() throws Exception{
       System.out.println(">>>>Starting with message=" + message);
   }
   public void stop() throws Exception{
       System.out.println(">>>>Stopping with message=" + message);
   }
}

2 个答案:

答案 0 :(得分:1)

您需要确保将类文件放在包文件夹下。对于例如如果您的界面是在包{ - 1}}下定义的,那么您的类文件应位于pkg1子文件夹下。

您的目录结构应如下所示:

pkg1

您必须手动移动类文件,或者甚至更好,您可以使用以下命令编译.java文件,让编译器为您处理:

srcfolder -+
           +- pkg1 -+- MeterMovementServiceMBean.class
           |        +- MeterMovementService.class
           |
           +- MeterMovementService.java
           +- MeterMovementServiceMBean.java

答案 1 :(得分:1)

javac -d . *.java编译当前目录中的所有java文件,并根据其包结构打包已编译的类文件。