我有以下项目结构:
root
|--SharedLibrary.jar
|--Project1
| |--package1
| |--mainclass.java
| |--class1.java
| |--package2
| |--class2.java
| |--Makefile
|
|
|-Project2
|- ...
我想在Proyect1
中编写一个makefile,它将使用mainClass.java
sharedLibrary.jar
(取决于项目中的所有其他类)
我试着这样写:
#!/usr/bin/make
all:
mkdir output
javac package1/MainClass.java package1/class1.java package2/class2.java -d output -cp ../sharedLibrary.jar
java output/package1.MainClass -cp ../sharedLibrary.jar:.
clean:
rm -r output
当我从控制台调用make
时,会执行前两个命令,并创建一个名为output的目录,其中包含两个文件夹(两个包),其中包含.class文件。但是执行主类的第三个命令不起作用。
我该如何解决?因为这是我第一次制作一个makefile,我应该遵循哪些好的做法?