GitHub匯入Maven專案到Eclipse
對於Java專案,在github上看到的大多數都是基於maven構建的,現在很多也開始轉用Gradle,比如Hibernate和Spring。最近想研究一些開源專案,不過clone後匯入eclipse,發現原始碼包是以普通檔案顯示的,這樣類之間不能直接跳轉,看起原始碼來非常費力,如下圖所示:
出現上述情況的原因是,GitHub上Maven專案一般為了結構清晰且不依賴具體的IDE而沒有將本地配置檔案放到版本庫中,這樣匯入Eclipse時由於沒有.classpath,.project而不能被識別成正規的專案,解決方法如下:
方法一、使用Maven生成Eclipse專案
使用上述命令,將生成後的專案匯入Eclipse即可,此方式非常方便。mvn eclipse:eclipse
方法二、新增並修改.classpath和.project檔案
題外話:開源專案為什麼不用IDE構建?
一般而言,對於比較正規的專案都不會基於IDE構建,而是採用Ant,Maven,Gradle。
為什麼不採用IDE呢?
一、關於IDE的選擇,蘿蔔青菜各有所愛。有人喜歡Eclipse,有人喜歡MyEclipse,牛人有用Vim,所以對於一個專案,特別是公開專案,採用基於某一個特定的IDE就限制了開源使用者的選擇,降低開發者的激情。實際上各種IDE 也是基於各種構建系統,不同的IDE,它們的構建方式不同,所以要讓不同的IDE間能一起開發,需要一個統一的構建工具。扯到構建工具, 一般c/c++ 專案用make,或者 premake. 而java 一般是ant,ivy,gradle,maven,還有直接的shell, 是不是很多沒聽說過呢? 去看開源專案就是長見識的時候了...
Maven,gradle提供將專案轉換為特定IDE的功能,比如mvn eclipse:eclipse,這樣使用者可以自己選擇喜歡的ide,方便快捷。。。
二、像Maven,gradle這樣的構建工具都提供jar的依賴管理,這樣上傳到github時就不用將jar包也上傳,可以節省很多空間。對於github提供的免費300M空間還是需要節約使用的。。。