使文件错误成为:***没有规则来制作目标`.class',需要`run'。停止

时间:2014-10-13 07:30:17

标签: java makefile

我有一个make文件:

 JCC = javac

 JAVA = java

 RM = rm

 default:   A.class B.class C.class D.class E.class


  A.class: A.java
  $(JCC) A.java

  B.class: B.java
   $(JCC) B.java

  C.class: C.java
  $(JCC) C.java

  D.class: D.java
   $(JCC) D.java

  E.class: E.java
  $(JCC) E.java

  run: $(E).class
  $(JVM)    $(E)

 clean: 
 $(RM) *.class 

当我尝试运行我得到的文件时:  ***没有规则使目标.class', needed by运行'。停止。

我是这个makefile的新手。有人请告诉我这里我做错了什么?

E是要运行的主要类。

1 个答案:

答案 0 :(得分:0)

E不是变量。这就是run目标尝试获取.class依赖关系的原因。

更改

run: $(E).class
  $(JVM)    $(E)

run: E.class
  $(JVM)  <I dont know what you should put here, but its definitely not $(E)>