IntelliJ : 여러 프로젝트에서 작업


332

우리는 maven에 여러 프로젝트를 빌드합니다 (A, B, C로 이름을 지정하십시오). 프로젝트 A는 프로젝트 C의 .jar를 사용하는 프로젝트 B의 .jar을 사용합니다.

모든 A / B / C 프로젝트의 코드를 수정하고 있습니다 (A는 MVC 앱, B는 비즈니스 서비스, C는 일부 공유 계층).

문제는 Eclipse / NetBeans에서 모든 것을 한 번에 볼 수 있으며 수정하는 것이 편안하다는 것입니다. 그러나 IDEA에서는 IntelliJ IDEA의 3 개 인스턴스 (또는 n 개 인스턴스) 를 열어야 합니다.

뭔가 빠졌습니까? IntelliJ를 사용할 때 더 나은 접근 방법이 있습니까? 이것은 atm의 IntelliJ의 가장 큰 단점입니다.


3
지금까지의 대답을 살펴보면 IntelliJ가 Eclipse로 "프로젝트"를 모듈로, "작업 영역"을 프로젝트로 정의하는 것을 정의합니다. 아이디어는 동일한 프로젝트의 모듈이 상당히 관련이 있는지 확인하는 것입니다. 따라서 프로젝트 A가 프로젝트 B에 의존하지만 둘 다 프로젝트 C와 전혀 관련이없는 경우 동일한 IntelliJ 프로젝트에서 모듈 A로 프로젝트 A와 B를 열고 두 번째 IntelliJ 인스턴스에서 별도의 프로젝트에서 C를 여는 것이 좋습니다. 디자인에 동의하거나 동의하지 않을 수 있지만 (아이디어를 올바르게 포착했다고 가정) 나는 그 생각을 존중합니다.
John Chesshir

답변:


134

예, 직감이 좋았습니다. 세 개의 인텔리전트 인스턴스를 사용해서는 안됩니다. 하나의 프로젝트를 열고 다른 '부품'애플리케이션을 모듈로 추가 할 수 있습니다. 프로젝트 브라우저를 통해 추가하십시오. 기본 단축키는 alt +1입니다.


1
나는 같은 일을하고있다 : 메인 프로젝트를 가져온 다음 'import module'을 사용하여 두 번째 프로젝트를 가져 오지만 나중에- "이 모듈은 maven 구조에서 제거되었습니다 : ... 제거 하시겠습니까? 프로젝트에서도? " 그런 다음 '아니요'를 누릅니다. 그러나이 대화는 여러 번 나타납니다. 어떡해?
nnhthuan

99
아래에 더 나은 답변
redDevil

3
@redDevil 어느 쪽?
Piotr Findeisen 5

4
@redDevil 아니! 이 답변은 더 일반적입니다. 메이든 프로젝트가 아닌 경우 가장 인기있는 답변이 단순히 해당 프로젝트를 다루지 않기 때문에이 답변이 더 좋습니다. 두 답변이 서로 다른 상황을 해결하고 동등하게 관련이 아무도없는 더 나은 다른 것보다.
luk2302

2
이것은 "Maven only"답변보다 낫지 만 동시에 볼 수있는 관련없는 프로젝트 (예 : 다른 프로젝트 코드를 쉽게 액세스 할 수있는 프로젝트)가 있거나 종속성이있는 라이브러리를 지원하는 경우 도움이되지 않습니다 당신이 집중하고있는 프로젝트. IJ가 Eclipse / NetBeans 모델을 사용하지 않는 방법에 대해 매우 실망스럽게 생각하는 것은 IJ로 전환하는 것을 방해하는 주요 요소입니다.
Manius

422

나는 이것이 최신 버전의 IntelliJ에서 향상되었다고 생각합니다. 현재 버전 (12.0.2)에서는 동일한 "작업 공간"에 여러 개의 개별 Maven 프로젝트를 추가 할 수 있습니다.

내가 찾은 가장 간단한 방법 +은 "Maven Projects"창의 작은 아이콘 (보기> 도구 창> Maven Projects)을 클릭 한 다음 가져올 추가 pom 파일을 선택하는 것입니다.


2
추가하기 : Maven 프로젝트가 추가되면 로컬 프로젝트 인 경우 프로젝트 패널에로드됩니다.
Aram Kocharyan

9
이러한 프로젝트가 다른 git 리포지토리에있는 경우 설정 (설정> 버전 제어> Git)에서 '동기화 리포지토리 제어'를 확인할 수 있습니다. IntelliJ는 푸시, 업데이트 및 지점 선택을 여러 프로젝트에서 동기화 된 상태로 유지합니다.
Tim Van Laer

13
IntelliJ를 처음 사용하고 "Maven Projects"창이 어디에 있는지 모르는 경우 : 오른쪽 상단.
dustin.schultz


3
따라서 여러 프로젝트를 열어야하지만 Gradle 또는 Ant 프로젝트 인 경우 여전히 운이 좋지 않습니다. 고마워 ... NetBeans 및 Eclipse와 같이 3 개를 모두 열 수 있어야합니다. 적절한 작업 공간이 부족하기 때문에 여전히 IJ를 사용하지 않는 가장 큰 이유가 있습니다.
Manius

216

다음 2 단계를 따르십시오.

1 단계 : "Maven 프로젝트"열기

여기에 이미지 설명을 입력하십시오

2 단계 : 가져올 프로젝트를 선택하십시오.

여기에 이미지 설명을 입력하십시오


20
그림은 천 단어의 가치가 있습니다.
Neeraj Jain

3
고마워, 이것은 정말로 유용했다
J. Adam

3
이 답변은 특히 스크린 샷을 사용하는 데 많은 도움이됩니다. 감사합니다.
Chaklader Asfak Arefe 19

1
이것이 내가 찾고있는 대답입니다. 감사합니다 :)
Jerin Kurian

1
내 경우에는 옵션이 표시되지 않습니다.2019.3 community
Marinos An

134

전제 조건

모든 관련 프로젝트를 동일하게 루트 디렉토리 .

단계

1) 먼저 빈 프로젝트를 새로 만듭니다.

새로운 빈 프로젝트


2) 그런 다음 모든 프로젝트의 루트 디렉토리를 선택하십시오.

그러면 다음 단계에서 수행 할 모듈 구성을 기억하는 .idea 디렉토리가있는 빈 프로젝트가 생성됩니다.

루트 디렉토리를 선택하십시오


3) 그런 다음 다음 창에서 다른 프로젝트를 모듈로 가져옵니다.

프로젝트를 모듈로 가져 오기


4) 다음 창에서 각 프로젝트를 가져 오려면 build.gradle을 두 번 클릭 하거나 pom.xml을

프로젝트를 새 모듈로 가져옵니다. 빌드 파일 선택


5) 완료, 이제 모든 프로젝트를 모듈로 동일한 IntelliJ 프로젝트에서 열었습니다.

결과


16
이것이이 질문에 대한 정답입니다. 먼저 프로젝트를 생성하고 비운 다음 기존 프로젝트를 추가하십시오. 감사.
hrzafer

4
당신은 해결책이 있습니다. 그러나 '전제 조건 모든 관련 프로젝트가 동일한 루트 디렉토리에 있어야합니다.' 필요하지 않습니다. maven 프로젝트를 시도했지만 Intelllij 버전 2017.3에서 정상적으로 작동합니다. 나는 intellij 표준 모듈로 시도하지 않았습니다.
Gauthier Peel

2
정확한 해결책!
사테 쉬

2
최고 답변. 감사합니다 :)
AnarchoEnte

2
Intellij Idea 2018.3 및 Gradle에서 나를 위해 일했습니다.
incises

53

IntelliJ 14.1.2에서는 다음과 같이했습니다.

선택 File-> Project Structure->Modules .

선택 +하고Import Module 과 (POM 존재 또는 디렉토리)이 프로젝트의 디렉토리를 선택하고 확인을 클릭합니다.

다음 화면 흐름을 따르고을 클릭 Finish하면 기존 화면과 함께 프로젝트가 표시됩니다.

여기에 이미지 설명을 입력하십시오


이와 같은 모듈을 추가 할 수 없습니다. Cannot import anything from C:/Projects/
ever alian

@everalian, C : / Projects 또는 다른 곳에 pom.xml이 있습니까?
Neo

아니요 pom.xml 파일이 없습니다. Gradle빌드를 사용 하기 때문입니다.
ever alian

2
이것이 허용되는 솔루션이어야합니다. 모든 프로젝트가 maven을 사용하는 것은 아닙니다.
Babken Vardanyan

34

Maven 프로젝트를 진행하고 있지 않기 때문에 어떤 해결책도 나를 위해 효과가 없었습니다. 더 간단한 해결책이 있습니다. 이동 :

파일-> 프로젝트 구조-> 모듈.

여기에 이미지 설명을 입력하십시오

모듈을 추가하는 대신 세 번째 옵션 (복사)을 클릭하기 만하면됩니다. 로컬 디렉토리를 찾아보고 추가하려는 프로젝트를 선택하십시오. 모듈 이름이 자동으로 해결됩니다. 그게 다야.

업데이트 : 여러 하위 프로젝트로 프로젝트를 다시 열려면 위에서 설명한 단계를 다시 수행하지 않으려면 파일-> 최근 열기-> '큰 프로젝트'로 이동하십시오.


1
예 ... 오 예 .... 이것은 내가 찾고있는 솔루션입니다. 받는다는 모듈 또는 생성하지 않습니다 프로젝트로 가져 오기 .ideaxxx.iml파일. 이로 인해 아파치 타일에 문제가 발생할 수 있습니다 . version과 함께 사용하고 2018.1.5있습니다. 대단히 감사합니다.
대격변

이것은 놀랍다! 유일한 단점은 IDE를 편집기로만 사용하고 있으며 컴파일하고 실행하려면 올바른 폴더로 이동해야합니다. 누구나이 솔루션을 여러 폴더 (복사 된 모듈)에 사용하고 편집기에서 컴파일하고 실행하는 쉬운 방법이 있습니까?
Greg Hilston

11

@Neo 답변을 확장하려면 디렉토리를 선택한 후. import module from external model모델을 선택 하고 선택하십시오 (이 경우에 해당).

모델을 선택하십시오

그런 keep project files다음 다음 대화 상자에서 옵션을 확인하십시오 . 모든 파일을 원래 디렉토리에 보관합니다.

옵션

최종 프로젝트 구조는 다음과 같습니다.

구조

이제 모듈을 다른 모듈에 대한 종속성으로 추가 할 수 있으며 종속성 pom.xml의 소스 코드를 변경하면 Intellij가 프로젝트 업데이트를 처리합니다 ( mvn종속성을 위해 수동으로 빌드 를 실행할 필요가 없습니다 )


8
  • 빈 프로젝트
  • 파일-> 새로 만들기-> 기존 소스의 모듈

6

당신이 사용할 수있는 전투 정보실 플러그인 편안 프로젝트 사이를 전환 할 수 있습니다. 프로젝트 목록의 기본 바로 가기는 Alt + A 입니다.

프로젝트 목록 창의 스크린 샷

기본적으로 현재 열려있는 프로젝트는이 목록의 맨 위에 굵게 표시됩니다 .


6

환경 설정-> 모양 및 동작-> 시스템 설정-> 선택 (새 창에서 프로젝트 열기)을 선택한 다음 적용하십시오.여기에 이미지 설명을 입력하십시오

그런 다음 여러 프로젝트를 열고 편집 할 수 있습니다.


5
이것이 바로 OP가 피하려고하는 것입니다. 그는 한 번에 세 개의 프로젝트를 모두 같은 창에서 원합니다.
Simon Forsberg

6

Gradle을 사용하는 사람에게는 다음과 같은 내용이 있습니다.

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

이동 : 1.보기-> 도구 창-> Gradle 2. +버튼을 클릭하고 build.gradle파일을 추가하십시오


Community Edition 또는 Ultimate Edition을 사용하고 있습니까? 나는 Intellij를 처음 사용하고 CE (2019.3.3) 만 얻었습니다. 해당 메뉴에는 Gradle이 없습니다.
마이크 설치류

4

"프로젝트 구조"를 여는 창에서 "F4"를 누른 다음 "+"아이콘 또는 "Alt + Insert"를 클릭하여 가져올 새 프로젝트를 선택하십시오. 그런 다음 확인 버튼을 클릭하십시오 ...


열쇠 고마워 @ThisIsFlorianK의 답변으로 무엇이든 추가하는 것을 잊어 버린 경우 도움이되었습니다!
사테 쉬

4

maven 프로젝트 추가 버튼을 사용하고 프로젝트 폴더로 이동하십시오. 그런 다음 pom.xml파일을 선택 하고 IntelliJ에 추가하십시오.

여기에 이미지 설명을 입력하십시오


1

maven을 사용하지 않고 새 프로젝트를 추가하려는 사람들을 위해 (intellij 14.1.3을 사용하고 있습니다) :

  1. 프로젝트 뷰에서 최상위 폴더를 마우스 오른쪽 버튼으로 클릭하고 새로 만들기-> 모듈을 선택하십시오.
  2. 추가 할 프로젝트와 동일한 이름으로 모듈 이름을 지정하십시오.
  3. 최상위 메뉴에서 File-> New-> Project를 선택하십시오. 새 모듈과 동일한 이름, 동일한 폴더 위치를 입력하십시오.
  4. 프로젝트를 열고 intellij가 프로젝트 구조를 생성 할 때까지 기다립니다.
  5. 이 새 프로젝트를 닫고 2 단계에서 모듈이 추가 된 원래 프로젝트를여십시오.

빌더에 따라 빌드 프로세스에 추가하기위한 추가 단계가 필요합니다.

SBT 및 최상위 프로젝트에서 Build.scala 파일을 수정하여 새 프로젝트를 집계하고 SBT 프로젝트 창에 프로젝트를 추가했습니다. SBT 멀티 프로젝트 빌드에 대한 추가 정보 : http://www.scala-sbt.org/0.12.2/docs/Getting-Started/Multi-Project.html


IntelliJ는 sbt 모듈을 프로젝트에 추가하는 지원을 추가했으며 실제로 잘 작동했지만 2017 버전부터 고장난 것 같습니다. 여전히 여러 sbt 모듈을 추가 할 수 있지만 새로 고치면 하나만 남기고 모두 잃게됩니다.
Nader Ghanbari

1

Intellij IDEA 2019.2, F4 + 모듈을 클릭하고 HDD에서 프로젝트를 추가하려면 +를 클릭하십시오.이 메뉴 위에서 프로젝트를 생성하고 더 많은 옵션을 사용하여 IDE를 편집 할 수 있습니다.


0

가져 오기 모듈 옵션을 사용하면 동일한 탐색기에서 이클립스처럼 열 수 있습니다.


그것은 프로젝트에 .ipr을 열 수 없다고 말합니다
항상 alian

0

나는 maven을 처음 사용하고 Viktor Nordling의 답변을 통해 추가 된 로컬 maven 프로젝트로 작업하는 방법을 이해하지 못했지만 여전히 pom.xml 파일에 적절한 종속성을 가지고 있습니다. 대답은 간단합니다. intellij는 먼저 로컬로 추가 된 모듈을보고 모듈을 찾지 못하면 프로젝트를 원격으로 가져옵니다.maven 모듈을 추가하거나 제거 할 때 프로젝트 브라우저에서 "외부 라이브러리"를 보면이를 확인할 수 있습니다.

이것이 누군가를 돕기를 바랍니다.



-1

전체 프로젝트를 모듈로 옮길 필요가 없습니다. 모듈의 사용 사례는 프로젝트 컨테이너보다 약간 세분화되어 있습니다.

같은 창에서 여러 프로젝트를 열려면 :

파일-> 프로젝트 열기

이 창에서 열기를 선택하십시오.

현재 프로젝트에 추가라는 확인란을 선택하십시오.


1
작동하지 않는. 현재 열려있는 프로젝트를 동일한 창으로 바꿉니다.
ever alian

3
@everalian 불행히도이 기능은 제거되었습니다.
BAR
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.