Java 编译子目录中的源代码并将其放置在另一个子目录中的Makefile
以下是我的课程结构: 主目录:Java 编译子目录中的源代码并将其放置在另一个子目录中的Makefile,java,makefile,Java,Makefile,以下是我的课程结构: 主目录: Makefile src/ bin/ 我希望能够编译/src目录中的文件,并将后续的.class文件放在/bin目录中 以下是我到目前为止的情况: BIN = ./bin/ SOURCE = ./src/ LIST = $(BIN)ContactBook.class all: $(LIST) $(BIN)%: $(SRC)%.java javac -d $(BIN) $< BIN=。/BIN/ 来源=./src/ 列表=$(BIN)Co
Makefile
src/
bin/
我希望能够编译/src目录中的文件,并将后续的.class文件放在/bin目录中
以下是我到目前为止的情况:
BIN = ./bin/
SOURCE = ./src/
LIST = $(BIN)ContactBook.class
all: $(LIST)
$(BIN)%: $(SRC)%.java
javac -d $(BIN) $<
BIN=。/BIN/
来源=./src/
列表=$(BIN)ContactBook.class
全部:$(列表)
$(BIN)%:$(SRC)%.java
javac-d$(BIN)$<
您的规则不正确,您想将.java
文件编译成.class
文件,您目前没有处理此问题的规则
SRC:=$(通配符SRC/*.java)
OUT:=bin
列表:=$(SRC:SRC/%.java=$(OUT)/%.class)
全部:$(列表)
$(OUT)/%.class:src/%.java |$(OUT)
javac-d$|$<
元(出):
@mkdir$@
您可能需要将.class
添加到目标的末尾才能使其工作。如果没有make,您将如何工作?如果没有make,我将如何工作:javac-d./bin//src/ContactBook.java问题是什么?