2011-05-17 63 views
4

我有一個eclipse工作區,它由15個不同的java項目組成。要配置eclipse工作區,每次需要手動添加java項目並在java構建路徑中添加依賴項和引用時。 每次添加所有項目並解決相關性成爲手動和冗餘任務。我探索了每個存儲依賴和參考信息的項目中的.classpath。 我想自動化這個冗餘過程。 有沒有人試過這樣做,任何投入都會有所幫助。自動配置Eclipse工作區

我不需要多次添加同一個項目,但通常需要創建一個新的eclipse工作空間,其中包含新的代碼更改和交付(我無法在當前工作空間中進行一些更改)。簡單的術語,例如,如果有人需要一次又一次地創建eclipse workspace,或者多個人需要爲他們的工作創建相同的工作區。我們如何減少這種手動工作?

+0

當你需要這樣做??在一臺新機器上? – sudmong 2011-05-17 07:04:45

+0

你能否詳細說明爲什麼你需要多次添加同一個項目? – Jacob 2011-05-17 07:05:51

+0

我不需要多次添加同一個項目,但通常需要使用新的代碼更改和交付來創建新的eclipse工作空間(我無法在當前工作空間中進行一些更改)。例如,如果有人需要一次又一次地創建eclipse工作區,或者多個人需要爲他們的工作創建相同的工作區。我們如何減少這種手動工作? – auto26 2011-05-17 10:34:26

回答

1

我還是有點不確定你的動機,但我會假設通過新的代碼更改和交付你的意思是不同的修訂/分支的相同的代碼庫。爲此目的以及其他許多原因,如果您未使用源代碼管理,如SVNGit,請查看它。這些工具是無價的,也是免費的。

的Eclipse

我不認爲這在技術上是你的問題的一部分,但我想補充它的完整性。如果你正在實施下面的技術,那麼有一個'滿載日食'也很方便。我在某個網絡驅動器上保留了一個「全加載的eclipse」,並預裝了一些插件,這樣團隊的新增功能就不必下載/安裝插件。這並不難,因爲eclipse不需要「安裝」。您可以將eclipse文件夾複製到您想要的位置並運行它。我個人喜歡包含插件source control,code style,code coveragemetrics,但是您應該包括您在項目中一貫使用的任何內容。

工作區

複製現有工作區(不包括任何項目,我會得到這個版本)所有你需要做的就是複製。從現有工作區文件夾元數據文件夾中的空文件夾,這將是你的新的工作區文件夾。當您啓動日食只需選擇新的工作區文件夾,你將有所有相同的喜好,你在其他工作區了。

我已經使用這個技術之前,這樣,當人們加入一個項目,他們可以採取一個「乾淨的工作空間」我一直在網絡驅動器上的某個地方,幫助他們快速啓動和運行的副本。優選的是,這個「乾淨的工作空間」不應該是唯一的個人喜好就像觀點的設置只是你喜歡它,但應該只像螞蟻全局屬性,編譯器遵從性級別的偏好過程中的任何偏好,預先製作的常用外部工具和運行配置等

項目

對於項目本身,我會建議他們檢查到源代碼控制,包括了Eclipse的.project以及classpath文件。 SVN插件(subclipse)使得它非常容易。然後當有人加入你的項目時,他們所要做的就是將它們作爲新的「乾淨工作區」中的項目檢查出來,這也很容易做到。由於您正在簽出的項目已經具有.project和.classpath文件,因此所有依賴項都已經設置好了!只要確保所有的罐子和其他依賴都與項目簽入。

工作區設置步驟

  1. 採取「滿載蝕」的副本。
  2. 取一份'clean workspace'。
  3. 檢出項目到該工作區。

這就是它!你的新兵應該準備好了!

多個代碼分支

現在,如果我是正確的假設,通過新代碼的變化和交付你的意思相同的代碼庫的不同分支,對於不同的分支一樣容易創建工作區按照相同的步驟,但檢查出所需的修訂或分支,而不是最新版本的幹線。如果您不太明白我的意思,請閱讀源代碼管理。

CUDOS

好你抽出時間來做到這一點,我一直在項目中它可以從字面上需要一天獲得設置...

+0

@Anon同意。在eclipse之外建立你的項目總是最好的。這是[持續集成]所必需的(http://martinfowler.com/articles/continuousIntegration.html)。 – 2011-05-17 11:51:06

+0

@加里感謝您分享的信息。它給了我開始的好地方。我使用Rational Clearcase進行源代碼控制,並使用將源文件複製到用戶計算機的快照視圖。所以我需要進一步探討.. 1)如何修改每個項目的.classpaths以更新依賴關係。我想我知道如何做到這一點.2)如何將項目加載到工作區。目前我手動添加指向創建的快照視圖的java項目。 – auto26 2011-05-18 08:54:32

+0

@ auto26樂意幫忙。 1)如果在源代碼管理中包含整個項目文件夾,包括.project和.classpath文件,則不應該手動修改它們。 2)您只需將項目文件夾(再次包括.project和.classpath文件)簽出到本地計算機並使用eclipse導入項目嚮導導入它。 – 2011-05-18 10:49:05

0

你不會說你是否使用Eclipse以外的構建工具,但如果不是,你應該。

Eclipse能夠解析Ant文件以發現源目錄和庫。 Maven和Gradle都可以生成Eclipse項目文件供您導入。

作爲一個更長期的好處,使用構建工具意味着您可以輕鬆構建和部署項目而無需任何Eclipse。新團隊成員在項目上工作會更容易,因爲他們不需要找出所有的依賴關係。

如果您還沒有專業人士,我會推薦Maven。建立一個基本的Java構建腳本很容易,其依賴管理功能比IMO更好。但是,它會迫使你採取自己的做法,特別是源碼樹佈局。

+0

我需要進一步探討.. 1)如何修改每個項目的.classpaths以更新依賴項。我想我知道該怎麼做。2)如何將項目加載到工作區。目前我手動添加指向創建的快照視圖的java項目。關於Maven,我需要在這方面進一步探索。聽起來像是很好的東西學習。 – auto26 2011-05-18 08:58:19

0

你真的應該考慮這樣的構建工具Maven, Ant, ....那些可以自動生成所需的類路徑變量你,可以做更多的事情,以及

+0

需要進一步探討.. 1)如何修改每個項目的.classpaths以更新依賴項。我想我知道如何使用Ant.2)我怎樣才能將項目加載到工作區。目前我手動添加指向創建的快照視圖的java項目。關於Maven,我需要在這方面進一步探索。聽起來像是很好的東西學習。 – auto26 2011-05-18 09:01:22

0

如果你檢查出的項目從Eclipse中的CVS/SVN開始,可以創建一個Team Project Set。這實質上是將包含的項目列表及其源代碼庫路徑

它可以通過文件來導出XML文件|導出|團隊| Team Project Set,並通過File |導入到另一個工作區導入|團隊|團隊項目集

沒有在此link on Javalobby

+0

我想知道Team Project Set是否僅適用於SVN或CVS的源代碼回購。我正在使用Rational Clearcase並創建snaphsot視圖,它將我的機器上的源文件進行復制。 – auto26 2011-05-18 09:00:00

+0

很酷。我不知道這個功能,但我一定要檢查一下。 – 2011-05-18 10:42:02

0

關於這個功能的更多信息使用無業遊民這是很容易實現自動化建立一個完整的桌面開發環境。

查看答案我提供給類似的問題here,它有腳本鏈接,可以自動檢查maven項目,創建eclipse工作區和導入項目。