從GitHub將Maven項目導入Eclipse4.2

簡介

GitHub is a web-based hosting service for projects that user the Git revision control system. It is a social networking where you can share your code. java

GitHub中的Maven項目通常沒有本地配置文件(主要是爲了去除依賴,使項目總體結構清晰)。 git

可是當導入Github的Maven項目,並與本地的Eclipse直接結成,總有些困難,直到Eclipse 4.2(Juno). 本文介紹如何導入github項目,並直接與eclipse集成。 github

引文

本文是在Windows 7下進行,下面的軟件將被安裝,並使之一塊兒工做 :
1. Eclipse: Eclipse IDE(本文使用eclipse-4.2)
2. Java: Java編程語言(本文使用java-1.7.0_05)
3. Maven: Java項目管理工具(本文使用mava-3.0.4)
4. Druid: JDBC Connection Pool(本文使用Druid項目爲例) web

條件準備
  1. GitHub流程, Set up git, Create a repo, Fork a repo, Be social. 參考GitHub Help.
  2. 生成ssh keys. 參考Generating SSH Keys.
  3. 有項目的push權限
  4. Java, Eclipse, Maven安裝正確

配置

Maven配置
Eclipse-4.2使用的Maven版本默認爲maven-3.0.4, 可是仍是建議設置一下:
版本設置: Window > Preferences > Maven > Installations
用戶設置: Window > Preferences > Maven > User Settings apache

SSH配置
SSH2設置: Window > Preferences > General > Network Connections > SSH2
注意設置SSH2 home及private keys. 編程

導入項目

1.右鍵 > Import > Project from Git eclipse

Project form Git

2.選擇URI ssh

Select Repository Source

3.輸入Remote Git Repo的配置信息 maven

Enter the location of the source repository

注意:Protocol使用ssh, User使用git, Password爲帳戶在github的密碼 編程語言

4.查找遠程分支信息

Getting remote branches information

5.選擇分支

Branch Selection

6.選擇本地目標位置

Local Destination

7.從版本倉庫中進行Clone

Cloning from repository

8.接受文件中

Receiving objects

9.選擇導入項目類型

Import as general project

注意: 選擇Import as general project

10.確認項目名稱

Import Projects

11.項目以下

General project

注意: 此時項目爲General Project不是Maven project, 須要手工修改配置文件。可是由[druid master]能夠看出,已是一個帶版本控制的項目了。

修改項目配置文件

因爲導入的是普通項目,須要轉化成Maven Project。Eclipse中項目的主要配置文件是.classpath和.project,還有.settings文件夾。
原項目爲General project, 只有.project文件,其.project配置文件內容以下

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <projectDescription>
  3. <name>druid</name>
  4. <comment></comment>
  5. <projects></projects>
  6. <buildSpec></buildSpec>
  7. <natures></natures>
  8. </projectDescription>


須要修改.project,並添加.classpath文件:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <projectDescription>
  3. <name>druid</name>
  4. <comment></comment>
  5. <projects>
  6. </projects>
  7. <buildSpec>
  8. <buildCommand>
  9. <name>org.eclipse.jdt.core.javabuilder</name>
  10. <arguments>
  11. </arguments>
  12. </buildCommand>
  13. <buildCommand>
  14. <name>org.eclipse.m2e.core.maven2Builder</name>
  15. <arguments>
  16. </arguments>
  17. </buildCommand>
  18. </buildSpec>
  19. <natures>
  20. <nature>org.eclipse.jdt.core.javanature</nature>
  21. <nature>org.eclipse.m2e.core.maven2Nature</nature>
  22. </natures>
  23. </projectDescription>

還有.classpath文件

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <classpath>
  3. <classpathentry kind="src" output="target/classes" path="src/main/java">
  4. <attributes>
  5. <attribute name="optional" value="true"/>
  6. <attribute name="maven.pomderived" value="true"/>
  7. </attributes>
  8. </classpathentry>
  9. <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
  10. <attributes>
  11. <attribute name="maven.pomderived" value="true"/>
  12. </attributes>
  13. </classpathentry>
  14. <classpathentry kind="src" output="target/test-classes" path="src/test/java">
  15. <attributes>
  16. <attribute name="optional" value="true"/>
  17. <attribute name="maven.pomderived" value="true"/>
  18. </attributes>
  19. </classpathentry>
  20. <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
  21. <attributes>
  22. <attribute name="maven.pomderived" value="true"/>
  23. </attributes>
  24. </classpathentry>
  25. <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
  26. <attributes>
  27. <attribute name="maven.pomderived" value="true"/>
  28. </attributes>
  29. </classpathentry>
  30. <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
  31. <attributes>
  32. <attribute name="maven.pomderived" value="true"/>
  33. </attributes>
  34. </classpathentry>
  35. <classpathentry kind="output" path="target/classes"/>
  36. </classpath>

刷新項目

在項目上右鍵 > Refresh.
若是還有錯誤,能夠在項目上右鍵 > Maven > Update project.. > OK, Eclipse 會自動從新創建.settings文件夾。

General project real

此時項目完成,能夠直接提交到GitHub了。

相關文章
相關標籤/搜索