有时候我们编写少量文件的java测试代码,一个一个的用命令行进行编译比较麻烦,且一段时间之后可能就忘记了哪个才是main函数所在的类。因此可以编写一个makefile文件自动编译,格式如下:
target:
@javac ./Beverage.java
@javac ./CondimentDecorator.java
@javac ./Mocha.java
@javac ./Whip.java
@javac ./Soy.java
@javac ./Espresso.java
@javac ./StarbuzzCoffee.java
@java StarbuzzCoffee
@rm *.class
在命令行输入:
make
则会有结果输出。
说明:
target是系统默认的make目标。即命令行输入的make等同于make target。我们还可以如下编写:
target:
@javac ./Beverage.java
@javac ./CondimentDecorator.java
@javac ./Mocha.java
@javac ./Whip.java
@javac ./Soy.java
@javac ./Espresso.java
@javac ./StarbuzzCoffee.java
run:
@java StarbuzzCoffee
clean:
@rm *.class
这样我们输入make只会执行target下的内容,
输入make run执行run下的内容,输入make clean执行clean下的内容。
@符号隐藏命令行输出。