Java 使用Makefile在目录中搜索依赖项
我目前有这样一个makefile:Java 使用Makefile在目录中搜索依赖项,java,compiler-construction,compilation,makefile,gnu-make,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:
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'.’"
我在这里找到了它的描述:以及如何解决它:
现在,正在bin/package{1,2,3,4,5,6,7,8,9}/file{1,2,3,4,5,6}.class位置中适当地创建所有.class文件;但是,当运行以下命令时:
javac src/package1/main.java
它给出了大量错误,说明:
error: cannot find symbol
我已尝试使用-cp标志将javac命令更改为以下命令:
javac -cp src/package1/*;src/package2/*...
但是它似乎没有抓住所有的依赖项,而且命令太长了。我已经尝试了很多解决方法,但我不确定如何最好地使用makefile和javac命令来实现这一点
我已经有一个ant构建可以工作,但是我特别需要这个make文件也可以工作
谢谢你抽出时间!
致以最诚挚的问候,Ugh,用Make?耶@OliCharlesworth构建Java。OP可以用一个名为“build.sh”的shell脚本构建Java,更不用说长的类路径了,我已经使用了很多丑陋的类路径。这就是剧本应该处理的,不是吗?