假設我們想要把程式java檔和編譯過的class檔分開在不同資料夾下
project資料夾底下放著 src 和 classes 兩個資料夾
src: 放java檔(原始碼),目前裡面有兩個檔案:Main.java, Console.java
classes: 放class檔(編譯後),目前裡面為空
開啟terminal,將目錄切換到project資料夾,輸入
javac -verbose -sourcepath src -d classes src/Main.java
-verbose:可以看到編譯的過程
-sourcepath:之後接的參數src,就是我們存放java檔的資料夾
-d:之後接的參數classes,就是我們想要放編譯後的class檔的資料夾(可以把d想成destination或directory)
最後接的參數就是我們想要編譯的檔案,放在src資料夾底下的Main.java檔
也可以再多下一個參數
-cp/ -classpath:之後接的參數,在這個情況是classes資料夾,也就是如果整個專案中,在classes裡,有些檔案沒有更改,就不會重新再編譯一次