我一直在Ubuntu终端上编译和运行我的程序,如下所示:
javac ev.java
java xyz.class file_name.txt
如何为此制作makefile?
我已经完成了一些教程,但他们没有谈论包含文件的情况,坦白说我无论如何也无法理解它们。
到目前为止我的Makefile
:
all : build run
build : javac ev.java
run : java xyz.class
不,我不想使用ant,maven等只有Makefile。
答案 0 :(得分:1)
为了使这个成为一个完整的例子,请从基本的Java程序开始,例如Hello.java
这里
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
然后我们将创建一个Makefile
;我们希望在Hello.class
上运行Hello.class
(Hello.java
依赖。让我们添加一个编译器OPTS
变量和一个CLASSPATH
变量(对于这个例子,我们只使用.
并启用调试)。请注意make
为标签(以及变量赋值中的空格)提供了语义含义,此示例包含标签。
CLASSPATH = .
OPTS = -g
run: Hello.class
java -cp $(CLASSPATH) Hello
Hello.class: Hello.java
javac $(OPTS) -cp $(CLASSPATH) Hello.java
clean:
rm -f Hello.class