1. 程式人生 > >#maven--Maven專案被clean命令之後的紅叉或找不到class檔案

#maven--Maven專案被clean命令之後的紅叉或找不到class檔案

該問題的特徵是,使用Eclipse 整合Maven 開發專案,執行clean 命令後,原來編譯的結果被清掉,然後在編輯、編譯原始碼或執行時報“XXX( 類) cannot be resolved to a type” 錯誤,Eclipse 的Package Explorer 窗口出現大量的紅叉。這種現象是被IDE 之外的命令清除了結果,IDE 不能找到編譯檔案。

解決的辦法是:Eclipse 選單中找到Project -> Build automatically ,並確定是勾選的,其次點選Project -> Clean… 選單命令項,在彈出的對話方塊中找到工程,如果是多個工程依賴開發,可以選擇“Clean all projects”,然後點選“OK ”按鈕。此過程Eclipse 會清除專案中編譯的.class 檔案,同時重新編譯工程( 類似於jBuild中的Rebuild 功能) 。

我們知道,Maven 可以託管專案的整個生命週期,它從驗證、原始碼管理、編譯、測試、打包、分發、部署( 安裝) 整個系列過程都會參與。而IDE 也可以完成這些功能,因此兩者之間會出現重複卻不能智慧協作的操作,Maven 清除了Eclipse 編譯結果,Eclipse 則以紅叉叫囂。