2012-02-14 71 views
6

我想了解一個簡單的命令行字符串,它執行Javac並傳遞一些簡單的參數。完整的命令行是:

javac -d $(OUTPATH) -sourcepath $(SOURCEPATH) $< 

一切都在這條線是簡單易懂的,以我除了最後令牌:$<

這些標記是什麼意思?

附錄:確實,評論者是正確的。這一行發生在一個makefile中。現在我明白了,但不是在我寫這個問題時,makefile傳遞給make而不是shell腳本。

請注意:What do $< and [email protected] represent in a Makefile?也討論了這一點(我沒有看到它,當我看到以前的問題)。

+2

這是在一個生成文件? – 2012-02-14 21:04:32

+0

我不認爲這是正確的bash語法。 – asf107 2012-02-14 21:06:10

+0

我猜測是因爲$ <是make中的一個特殊變量,而不是bash。 – jordanm 2012-02-14 21:07:16

回答

7

這看起來像是來自makefile的東西,而不是命令行。在這種情況下,$<擴展到當前目標的第一個先決條件。也就是.class目標所依賴的.java文件。

相關問題