前面一共建立了4個專案,並各內含一個模組。模組間的依賴關係如下:
模組 |
依賴模組 |
zoo.animal.feeding |
無 |
zoo.animal.care |
zoo.animal.feeding |
zoo.animal.talks |
zoo.animal.feeding zoo.animal.care |
zoo.staff |
zoo.animal.feeding zoo.animal.care zoo.animal.talks |
所以在編譯新的模組之前,都要先把相依的模組放到每個專案的mods資料夾內。然後使用javac的命令列指令,以「--module-path」指定相依的模組JAR檔目錄,以「-d」指定程式碼目錄,然後進行編譯。
雖然使用javac可以陸續編譯所有類別,但在Eclipse會老是顯示編譯失敗,讓人看了心裡不踏實:
解決方式是在Eclipse上設定每一個專案相依的模組,分別示範如下。
專案zoo.animal.feeding
因為沒有相依模組,因此不用設定。
專案zoo.animal.care
專案zoo.animal.care相依於zoo.animal.feeding,設定方式為:
1. 使用滑鼠右鍵點擊專案,選擇「Properties」,先開啟專案的屬性視窗。然後點選左側的Java Build Path選項,再點擊右側的Projects頁籤,可以看到和編譯本專案相關的2個路徑,一個是Modulepath,一個是Classpath。在過去Java還沒有模組化功能前,使用舊版Eclipse只會看到Classpath的選項:
2. 點選Modulepath選項並點擊按鍵Add,在彈出的Required Project Selection選單中,勾選專案zoo.animal.feeding:
沒有留言:
張貼留言