Git에서 Eclipse로 Maven 프로젝트 가져 오기


100

Maven과 Git 모두에서 가져 오기를 선택하고 Eclipse가 내 프로젝트를 올바르게 생성하도록 선택하는 효과를 어떻게 얻을 수 있습니까?

내 프로젝트를 Eclipse로 가져 오기 위해 File-> import-> maven을 선택한 다음 모든 Maven 프로젝트를 가져 와서 잘 빌드하거나 File-> import-> git을 선택하고 pom을 무시하는 새 프로젝트를 만들 수 있습니다. .xml이고 프로젝트가 제대로 생성되지 않습니다.

둘 중 하나를 수행 할 수 있지만 둘 다 결합 할 수 없으므로 올바르게 생성 된 프로젝트를 얻을 수 있습니다.

답변:


103

Eclipse Indigo + M2Eclipse 1.0은이를 매우 쉽게 만듭니다.

M2Eclipse 용 Git 커넥터가 아직없는 경우 설치하십시오. M2Eclipse는 가져 오기 메뉴에서 메시지를 표시하여 도움을 줄 것입니다.

  1. 패키지 탐색기보기에서 "가져 오기 ..."컨텍스트 메뉴를 선택하십시오.
  2. Maven 카테고리에서 "SCM에서 Maven 프로젝트 확인"옵션을 선택하십시오.
  3. 표시되는 창에서 "m2e Marketplace에서 더 많은 SCM 커넥터 찾기"링크를 선택하십시오.
  4. Git 용 커넥터 찾기 ... 설치 ... 다시 시작

올바른 커넥터를 찾으려면 검색 창에 "Git"대신 "EGit"을 입력해야 할 수도 있습니다.

완료되면 EGit 저장소로 이동하여 작업 디렉토리의 컨텍스트 메뉴를 열고 "Import Maven projects ..."를 선택하십시오.

끝난!


4
Indigo에서이 작업을 수행했지만 Juno에는 현재 m2e-git SCM이 설치되지 않도록하는 버그가 있습니다. bugs.eclipse.org/bugs/...
Codey McCodeface

1
@ medPhys-pl Git 자체가 아니라 m2e 및 EGit 과 관련된 문제인 것 같습니다.
Sri Sankaran 2012

1
"쉬움"은 상대적입니다. 전체 이클립스 마켓 플레이스가 엉망 이고, 메이븐 repostiories는 호환성을 추적하지 않기 때문에 엉망입니다. 따라서 거의 동일한 패키지의 수십 개의 복사본을 얻게되며 이제 "m2e 마켓 플레이스"를 추가해도 상황이 더 나아지지 않습니다. .
Has QUIT--Anony-Mousse 2013

1
@ Anony-Mousse : "쉬움"이 상대적이라는 데 동의합니다. 그러나 나는 그것을 사용하여 원래 질문 (Git 리포지토리에서 Eclipse로 가져 오기)에 대한 내 경험을 설명했습니다. 귀하의 불만은 유효 할 수 있지만 해결되는 문제가 아닙니다.
Sri Sankaran 2013 년

2
4 단계에 수정이 있습니다. "..connector for EGit .."이어야합니다. 시장에서 특정 검색 m2e-egit입니다.
nanospeck

41

명령 줄 (Eclipse 외부)을 통해 git 복제를 수행 한 다음 File-> Import ...-> Existing Maven Projects를 사용 합니다.

프로젝트는 Git 및 Maven을 사용하는 것으로 이해됩니다. IMO를 가져 오는 가장 빠르고 안정적인 방법입니다.


3
예, 확실히 작동하지만 최신 m2는 마침내 git 및 svn과 잘 통합되었습니다. 다른 사람들이 언급했듯이 EGit 1.0.0, m2e 1.0 및 m2e-egit 0.13은 git-> materialize mvn project to eclipse를 한 단계로 제공합니다.
thetoolman

흠, 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "Team> Share Project"등을 사용하여 EGit이 Git 프로젝트임을 인식하도록해야했습니다.
Brian McCutchon

19

1 단계 : Eclipse 설정

먼저 몇 가지 Eclipse 플러그인이 설치되어 있어야합니다. 따라서 도움말 드롭 다운 메뉴 에서 eclipse IDE 소프트웨어 설치 기능을 사용하고 → 새 소프트웨어 를 설치하고 사용 가능한 소프트웨어 사이트에 대한 링크를 추가 한 다음 설치하십시오.

  1. GIT 플러그인 (EGIT) - http://download.eclipse.org/egit/updates
  2. 이클립스 메이븐 플러그인 (m2eclipse에) - http://download.eclipse.org/technology/m2e/releases
  3. EGit 용 Maven SCM 핸들러 (m2e-egit)

    M2E 마켓 플레이스에서 설치 (설정 → Maven → Discovery → 카탈로그 열기 및 "m2e-egit"검색)


2 단계 : 저장소 복제

Git에서 Maven 프로젝트 복제 (다운로드)

Git에서 비 Eclipse Maven 프로젝트 확인 (파일 → 가져 오기 .. → Maven → SCM에서 Maven 프로젝트 확인)

파일 → 가져 오기 .. → Maven → SCM에서 Maven 프로젝트 확인

이제 SCM URI 필드에 git 저장소 링크를 추가하고 다음을 클릭하고 완료합니다.


18

이 (업데이트 된) 작성 시점에서 작동하는 설정은 다음과 같습니다.

  1. Eclipse 3.8 (Eclipse Indigo 업데이트 사이트)
  2. EGit 1.3.0 (Eclipse Indigo 업데이트 사이트)
  3. m2e 1.0.200 (Eclipse Indigo 업데이트 사이트)
  4. m2e-egit 0.14.0 (커넥터 추가시 m2e 마켓 플레이스)

Ubuntu Raring에서 테스트되었습니다.

확실히 "Import"-> "Maven"-> "Check out Maven Projects from SCM"을 할 수 있으며 이것이 가장 빠른 방법입니다. 그러나 이러한 직접 가져 오기는 현재 복제 된 저장소 폴더 이름을 제어 할 수 없습니다. "Git 저장소"보기에서 작업하고 "Git 저장소에서 복제하고이보기에 복제 추가"를 수행 한 다음 해당 복제에서 "Maven 프로젝트 가져 오기"를 수행하는 것이 더 나을 수 있습니다. 가장 긴 방법은 수동 복제를 수행 한 다음 "이 뷰에 기존 로컬 Git 저장소를 추가"한 다음 "Maven 프로젝트 가져 오기"를 수행하는 것입니다. 두 경우 모두 복제 된 폴더에 대한 모든 권한이 있습니다.

좌절감으로 울게 만든 부차적 인 문제에 대한 마지막 코멘트. 내가 아는 한, 복제 된 저장소가 Eclipse 작업 공간의 루트에 있고 Maven 프로젝트 파일 계층의 루트에 POM이있는 경우 이러한 루트 프로젝트를 가져 오면 복제 된 폴더의 이름이 변경됩니다 (선택한 템플릿으로 기본값은 기본값). [artifactId]). 프로젝트 구조를 변경하지 않고 파일을 작업 공간 외부에 보관하지 않고 작업 공간 폴더의 하위 폴더에 복제하여이 문제를 쉽게 해결할 수 있습니다.


13

내 프로젝트를 위해 이것을 테스트하고 있습니다.

  1. Eclispe 인디고
  2. "도움말> 새 소프트웨어 설치" "Eclipse Git Plugin .."에서 공식 Git 플러그인을 활성화 / 설치하고 로트를 설치합니다.
  3. 이 지침에 따라 Maven / EGit 커넥터를 활성화합니다. m2eclipse에서 git 통합을 사용하려면 어떻게해야합니까?
  4. Git 저장소 Perspective로 전환하십시오. 프로젝트 git url을 마우스 오른쪽 버튼으로 클릭하십시오. 기본값은 모두 작동합니다. 추측 한 설치 폴더를 변경할 수 있습니다.
  5. 복제 된 저장소를 확장하고 "Working Tree"를 마우스 오른쪽 버튼으로 클릭하고 "Import Maven Projects ..."를 선택합니다.
  6. Java Perspective로 전환하십시오. 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "팀> 프로젝트 공유"를 선택합니다. "Git"을 선택하고 "프로젝트의 상위 폴더에서 저장소 사용 또는 생성"상자를 선택하십시오.

1
그래, 나도 똑같이 했어. m2e-egit이 6 단계를 자동으로 수행하지 않는 이유를 이해하지 마십시오.
xmedeko

6

내 해결 방법은 다음과 같습니다. 이것은 이러한 문제에 대한 해결책입니다.

  • m2e-egit을 설치할 수 없습니다 (Juno에서 오류가 발생합니다)
  • 일반 프로젝트 (Git 저장소에 연결된)를 Maven 프로젝트로 변환하는 것이 작동하지 않습니다 (Maven 프로젝트 가져 오기 단계가 필수 인 것 같습니다)
  • 파일 시스템의 저장소에서 Maven 프로젝트를 가져 오면 Git에 연결된 프로젝트가 표시되지 않습니다.

  1. Git 리포지토리에서 Git 리포지토리 설정 탐색 관점 .
    • Java Perspective로 전환하고 가져 오기> 기존 Maven 프로젝트
    • 파일 시스템에서 Git 체크 아웃을 찾아 pom.xml 파일이 포함 된 디렉토리를 선택합니다. 가져 오기를 완료하십시오. 이 프로젝트는 Git에 연결되어 있지 않습니다. :-(
    • 이 프로젝트를 삭제하되 FILESYSTEM에서 삭제하지 마십시오 . 클론이 삭제되는 것을 원하지 않습니다. 이 작업은 다음 단계에서 가져올 수 있도록 .project 파일도 남겨 둡니다.
  2. Git Repository Exploring Perspective로 돌아가십시오 .
    • 저장소를 마우스 오른쪽 버튼으로 클릭하고 프로젝트 가져 오기 ...
    • 기존 프로젝트 가져 오기를 선택 합니다.
    • 아래 탐색기에서 pom.xml (및 .project 파일)이 포함 된 디렉토리를 찾아 선택하고 다음을 클릭합니다.
    • 마법사를 계속합니다.

Eclipse Luna에서는 1.2 단계 이후에 작동했습니다 (첫 번째 가져 오기 후 프로젝트가 Git에 연결됨).
PJ_Finnegan

4

Mylyn 용 추가 커넥터를 설치하지 않고 가져 오기 :

  1. Git Repositories보기 열기 (창->보기 표시-> Git 저장소)
  2. Clone a Git Repository버튼을 누르고 모든 단계를 진행하십시오
  3. 새로 생성 된 저장소에서 확장하고 Working Directory프로젝트가있는 폴더를 마우스 오른쪽 버튼으로 클릭 하고을 선택 Import Projects합니다. 다음 중 하나를 선택 Import existing projects하거나 선택 Import as general project. 가져온 후 필요한 경우 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Configure-> Convert to Maven Project (및 Maven-> Update Project)를 선택합니다.

3

생성 된 메타 데이터를 버전 제어 (git 또는 다른 scm로 설정)에 두는 것은 코드베이스에서 작업하는 개발자가 둘 이상인 경우 그다지 좋은 생각이 아닙니다. 두 명의 개발자가 완전히 다른 프로젝트 또는 클래스 경로 설정을 가질 수 있습니다. 언젠가 코드를 공유하려는 경우에 대비하여 미리 알려 드리는 것처럼 ...


2

git에서 관리되는 세 개의 하위 모듈이있는 maven 프로젝트가 있습니다. 이클립스에서 다음과 같이 설정했습니다.

  1. EGit을 사용하여 Eclipse에 git 저장소를 등록했습니다.
  2. 프로젝트를 기존 Maven 프로젝트로 가져 왔습니다.
  3. 각 프로젝트마다 Team | 프로젝트 공유 .

1

프로젝트를 Eclipse로 가져 오는 maven대신 프로젝트로 가져 오는 것을 선호합니다.git . 이렇게하면 여전히 프로젝트 콘텐츠가 git 콘텐츠로 인식 될 수 있습니다. Eclipse에서 계속해서 git 작업을 수행 할 수 있습니다. 당신이 언급했듯이 그 반대는 사실이 아닙니다.

Eclipse에서 프로젝트의 특성은 프로젝트를 보유하는 SCM이 아니라 프로젝트 유형 (전쟁이든 항아리이든)에 기반합니다. 프로젝트를 Maven 프로젝트로 가져올 때 자동으로 결정됩니다.

SCM IDE 관련 메타 데이터에 체크인하는 것을 주저합니다. 이렇게하는 것은 많은 것을 가정합니다. 모든 개발자는 동일한 IDE 또는 IDE 버전, 아마도 동일한 버전의 JDK / JRE를 사용하고 있으며 프로젝트 수명주기 동안 동일한 버전을 계속 사용하고 있습니다.


1

당신은 (당신이 한 경우는 자식 프로젝트로 가져온 다음 수 없습니다 m2eclipse에이 에서 프로젝트에 설치)을 마우스 오른쪽 클릭을 패키지 탐색기 > Maven> Enable Dependency Management?


1
보이지 않고 m2e가 설치되어있는 경우 .project 파일을 열고 직접 maven2 네이처를 추가하십시오. <name> org.eclipse.m2e.core.maven2Builder </ name>
dimitrisli

1

Egit에서 내 브랜치를 확인한 후 Java View로 전환 한 다음 File-> Import, Git-> Projects from Git을 사용한 다음 최상위 maven 디렉터리를 선택했습니다. 이것은 Eclipse Kepler와 함께했습니다.


-3

import-> maven 명령을 통해 지속적으로 프로젝트 메타 데이터를 생성하는 대신 프로젝트 메타 데이터를 한 번 생성하여 나머지 소스 코드와 함께 git 저장소에 배치 할 수 있습니다. 그 후에 import-> git 명령을 사용하면 Maven 도구가 설치되어 있다고 가정하고 적절한 Maven 지원 프로젝트를 가져옵니다.

'.'로 시작하는 프로젝트 디렉토리의 모든 파일을 소스 제어 시스템에 배치해야합니다. .classpath 및 .project와 같은 .settings 디렉토리의 전체 내용.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.