使用Makefile搜索目录的依赖关系

时间:2014-05-28 21:04:01

标签: java compiler-construction compilation makefile gnu-make

我目前有一个makefile:

SOURCES = \
src/package1/*.java \
src/package2/*.java\
src/package3/*.java\
src/package4/*.java \
src/package5/*.java \
src/package6r/*.java \
src/package7/*.java \
src/package8/*.java \
src/package9/*.java 

稍后在make文件中我有:

new:
    make clean
    make caller



caller: $(SOURCES) src/package1/file1.java src/package2/file3.java
        javac src/package1/main.java

首先,我不断收到有关需要构建的每个文件的规则的错误。它的形式如下:

   "‘No rule to make target `xxx', needed by `yyy'.’"

我在这里找到了它的说明:http://www.gnu.org/software/make/manual/html_node/Error-Messages.html以及如何在此处解决:http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_4.html#SEC26

现在,所有.class文件都在bin / package中正确创建{1,2,3,4,5,6,7,8,9} / file {1,2,3,4,5 ,6} .class location;但是,当以下命令运行时:

    javac src/package1/main.java

它给出了过多的错误陈述:

     error: cannot find symbol

我尝试使用-cp标志将javac命令更改为以下命令:

  javac -cp src/package1/*;src/package2/*... 

但它似乎并没有抓住所有依赖项,而且命令太长了。我一直在尝试很多工作,但我不确定如何使用makefile和javac命令做到最好?

我已经有一个可行的ant构建,但我特别需要这个make文件也能正常工作,

感谢您的时间! 最诚挚的问候,

0 个答案:

没有答案