【发布时间】:2012-02-26 17:52:16
【问题描述】:
我似乎无法理解这个问题。我有一个用于教育目的的简单项目,但无论如何,它都不会编译。我无法弄清楚我错过了什么。下面是makefile:
SHELL := /usr/bin/env bash
JFLAGS = -g -classpath "$(PWD)/src/tld/assignments/;$(PWD)/lib/;$(CLASSPATH)"
JC = javac
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) $*.java
CLASSES = src/tld/assignments/StoreDao.java \
src/tld/assignments/Store.java
default: classes
classes: $(CLASSES:.java=.class)
clean: $(RM) *.class
StoreDao 可以编译,但引用 StoreDao 的 Store 没有,并说:
src/tld/assignments/Store.java:9: cannot find symbol
symbol : class StoreDao
我已经尝试了带有斜杠和不带冒号、分号等的类路径 - 没有区别。
特别注意,因为我知道肯定会有人这么说。不,我不想/不能使用 Ant 或 Maven。这个任务的重点是使用 GNU Make。 (我可以使用 Ant 或 Maven 等,这不是问题)。
另一个注意事项,以防万一,我查看了发布到 SO 的类似问题 - 没有一个是我的情况(所有其余的结果都是语法错误或海报一侧的某种健忘,这不是)。
提前谢谢你。
【问题讨论】: