【问题标题】:java makefile "make: Nothing to be done for 'default'"java makefile“make:‘默认’无事可做”
【发布时间】:2019-04-20 00:35:53
【问题描述】:

我四处寻找答案,可惜来这里问。获得make错误“make:‘default’无事可做”的最佳选择是什么。对于我正在做的java项目。

我已经确定我的缩进是正确的,并且我已经尝试过“make clean”和“make default”。我也在 Windows 机器上使用 cygwin 编辑和运行它,但除了 cygwin 之外我没有使用其他任何东西来创建、编辑和运行 makefile。我还安装了最新的 java 版本。

这是我提供的makefile

JFLAGS = -g
JC = javac
.SUFFIXES: .java .class
.java.class:
    $(JC) $(JFLAGS) $*.java

CLASSES = \
      ALU.java \
      Binary_Debugger.java \
      CreateSim.java \
      Data.java \
      IF.java \
      IssueUnit.java \
      MEM.java \
      Pc.java \
      PostALU.java \
      PostMem.java \
      Pre_Issue_Buffer.java \
      PreALU.java \
      PreIssue.java \
      PreMEM.java \
      PrintCycle.java \
      Register.java \
      Write_Back_Unit.java \
      main.java

default: classes

classes: $(CLASSES: .java=.class)

clean:
    $(RM) *.class

我希望编译一个 .jar 文件,但我只是收到此错误。

【问题讨论】:

  • 为什么不用更现代的方式编译java,比如maven或者gradle?
  • @howie 如果它会制作我需要的makefile,那么我会使用它。

标签: java makefile


【解决方案1】:

这意味着您的课程已经存在(因此无需做任何事情)。如果你想重建,首先做一个make clean。喜欢,

make clean
make

至于 jar'ing 你的编译类,你没有jar 目标。

【讨论】:

  • 你的 jar 部分工作了。然而,我使用“javac -d.”和“jar cvmf manifest.mf ...”命令让makefile识别类。
猜你喜欢
  • 1970-01-01
  • 2021-09-06
  • 1970-01-01
  • 1970-01-01
  • 2012-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多