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
예 ... 오 예 .... 이것은 내가 찾고있는 솔루션입니다. 받는다는 모듈 또는 생성하지 않습니다 프로젝트로 가져 오기 .idea및 xxx.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.