我目前正在使用以下 Makefile:
JAVAC=javac
sources = $(wildcard *.java)
classes = $(sources:.java=.class)
all: myProgram
myProgram: $(classes)
clean :
rm -f *.class
%.class : %.java
$(JAVAC) $<
myProgram 最初只是一个 .java 文件,但我已将其替换为 .jar 可执行文件。我本质上仍然只是希望能够做一些简单的事情,例如:
make myProgram
如何修改我的 Makefile 来实现此目的?感谢您的任何意见/建议。
最佳答案
只需添加一个新目标(例如“jar”),并为其提供适当的“jar”命令
示例:
JAVAC=javac
sources = $(wildcard *.java)
classes = $(sources:.java=.class)
all: myProgram
myProgram: $(classes)
clean :
rm -f *.class
%.class : %.java
$(JAVAC) $<
jar: $(classes)
jar cvf myjarfile.jar $(classes)
您可以通过多种方式“调整”此示例。例如,您可能想要参数化“jar”命令(例如 JAR=jar
),您可能想要创建一个 list (也许让 makefile 本身使用适当的“echo”命令动态创建一个 list )等等。
以下是“jar”的 Oracle 文档:
http://docs.oracle.com/javase/tutorial/deployment/jar/build.html
关于java - 为 jar 可执行文件创建 Makefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25735553/