我试图理解一个简单的命令行字符串,它执行Javac并传递一些简单的参数。完整的命令行是:
javac -d $(OUTPATH) -sourcepath $(SOURCEPATH) $<
除了最终的代币之外,这一行中的所有内容都是直截了当且易于理解的:$<
。
这些代币是什么意思?
ADDENDUM:确实,评论者是正确的。该行出现在makefile中。现在很明显,但是当我写这个问题时,并没有将makefile传递给make
而不是shell脚本。
请注意:What do $< and $@ represent in a Makefile?也会对此进行讨论(当我查找以前有关此问题时,我没有看到它。)
答案 0 :(得分:7)
这看起来像是来自makefile,而不是命令行。在这种情况下,$<
扩展到当前目标的第一个先决条件。也就是说,.java
目标依赖的.class
文件。