프로젝트 관리

 

섹션은 이전의 IDEA 버전에 의해 만들어진 것에서 4.x프로젝트로의 마이그레이션, 모듈 이해 필요한 기초 뿐만 아니라 분산형 패키지와의 작동 IntelliJ IDEA에서 사용법 IDEA에서 프로젝트와 모듈이 함께 작동되는 것과 관계된 이슈를 기술합니다.

 프로젝트 생성
 모듈 생성
 프로젝트 구성

 경로
 컴파일러 옵션
 버전 제어

 CVS 옵션
 Visual SourceSafe 옵션
 StarTeam 옵션

 프로젝트 코드 스타일 옵션
 GUI 디자이너 옵션
 템플릿 프로젝트 설정

 

 프로젝트 닫기 재개멀티프로젝트의 지원
 프로젝트
공유

 

 모듈 경로와 기타 등등을 셋업하면서, 모듈에 관련된 다이얼로그에 대한 많은 세부사항은 다음의 섹션에 기술됩니다: J2EE 지원 섹션의 모듈에 관련된 뿐만 아니라 경로, 모듈 생성

모듈일반


IDEA 프로젝트는 모듈의 집합입니다.  그리고 모듈은 코드의 완전하고 기능적인 조각입니다.  통상 모듈은 다음 요소를 포함합니다:

*   컨텐트 또는 작업 폴더. 특정 모듈과 관계가 있는 파일을 포함하는 것은 당신의 하드 드라이브에 있는 세트의 디렉터리입니다.

*   라이브러리(자바 SDK 포함하는 ).

*   종속성 속성.   특정 모듈이 의존하게 되는 것은 어느 모듈이 특정 모듈과 모듈에 의존하는지 결정합니다.

*   출력 경로.

*   J2EE 속성.  J2EE 모듈 다른 일부 속성도 가집니다.

파일레벨에서 모듈은 .iml파일에 기술됩니다.

컨텐트


모듈 컨텐트는 세트의 Content Roots입니다 모듈 컨텐트를 포함하는 세트의 디렉터리입니다.
일부 하위 디렉토리는 소스 루트 또는 소스 폴더로서 표시될 있습니다.  그들은 Java 소스 또는 다른 자원 파일을 포함합니다.  그리고 패키지는 그들에게서 생성됩니다.
일부 하위 디렉토리는 Content Roots 부터 제외될 있습니다따라서IDEA 그들을 무시할 것입니다.

소스 루트 폴더는 개의 타입일 있습니다소스와 테스트 폴더.  테스트 폴더의 자바 클래스는 반대 이외에 소스 것에서 Java 클래스에 의존할 없습니다.  그리고 당신은 그들을 위해 개의 다른 출력 경로를 셋업할 있습니다.


디폴트로 모듈은 프로젝트 자바 SDK 사용합니다.  그러나, 그들은 다른 자바 SDK 버전을 사용하기 위해 구성될 있습니다.


그것은 같은 컨텐트 루트와 함께 다른 모듈을 생성한다고 권고되지 않습니다소프트웨어 특징의 일부는 통상 작용하지 않을지도 모릅니다.

 

라이브러리


라이브러리는 jar 아카이브 또는 디렉터리에서 포함되는 세트의 클래스 파일입니다.   클래스의 설정은 세트의 수정 가능한 원시 파일과 Javadocs 관련될지도 모릅니다.

라이브러리 데이터가 저장된 곳에 따라 개의 종류의 라이브러리가 IDEA 있습니다.

*   모듈 라이브러리
라이브러리 레코드는 오로지 모듈 파일 안에 존재합니다.  바꾸어 말하면, 라이브러리 클래스는 오로지 모듈에서만 보여지고 라이브러리 정보는 .iml 파일에 기록됩니다.  그런 라이브러리는 익명이고, 단지 jar 파일 또는 디렉터리를 잡을 있습니다.

*   프로젝트 라이브러리
라이브러리는 .ipr파일의 프로젝트 레벨에서 기술됩니다.  라이브러리 클래스는 프로젝트 내에서 보여집니다. 라이브러리는 항상 명명됩니다.  그것은 몇 개의 jar 파일 또는 디렉터리를 포함할 수 있습니다. 프로젝트 라이브러리를 참조하기 위해서 각각 모듈 .iml파일은 이 라이브러리의 이름과 함께 레코드를 갖습니다.
모듈은 명백히 프로젝트 라이브러리를 사용한다 라는 말을 들어야만 합니다. 프로젝트 라이브러리 정의는 공유한
.ipr 파일에 의해서만 공유될 수 있습니다.

*   전체 라이브러리
그런 이름 지어진 라이브러리 상의 레코드는 IDEA config 디렉터리에 저장됩니다.  이런 라이브러리는 프로젝트 레벨과 유사합니다. 그러나 전체 라이브러리는 다른 프로젝트를 위해 보여집니다.  전체 라이브러리를 사용하기 위해, 당신은 프로젝트에 그것을 특히 포함시켜야만 합니다.

종속성


모듈 종속성은 특정 모듈이 어느 모듈에 의존하는가와 어느 모듈이 그것에 의존하는가 결정합니다.
바꾸어 말하면, 모듈 M 클래스는 다른 모듈, 예를 들면 M1, M2 M3 클래스를 사용할 있습니다. 그리고 특별한 프로젝트에서 모듈 M 사용하기 위해, 세개의 다른 모듈, M1, M2 M3 또한 프로젝트에 추가되어야만 합니다.   종속성을 추가하는 것에 의해 당신은 그들의 라이브러리의 클래스 이외에 모듈 클래스를 직접 사용할 없습니다.

해결 순서


프로젝트에서 언급된 참조는 어떤 순서에서 해결됩니다.   추가된 모듈, 라이브러리와 모듈 클래스는 순서에서 항목으로서 제공됩니다.  만일 당신이 특별한 다이얼로그 안에서 필요하면 IDEA 당신에게 해결 순서를 변경하기 위한 옵션을 제공합니다.

패키지와 모듈


새로운 모듈 구조 때문에 당신은 하나의 모듈을 당신의 디스크 위에서 개의 디렉터리에 분배하게 있습니다. 그것은 편리할 수도 있지만 문제를 유발시킵니다:  당신이 그런 패키지 IDEA에서 객체를 생성하거나 옮길 , IDEA 항상 당신이 그런 객체를 놓을 필요가 있는 곳을 정확히 식별할 없습니다.   경우, 당신은 어디에 파일을 두어야 하는가 또는 변경을 생성해야 하는가 하는 선택을 당신에게 묻는 다이얼로그가 프롬프트 것입니다 (리펙토링의 경우).
예를 들면, 다음 다이얼로그 라고 불리는Project View 윈도우의 Packages 탭을 사용하는 분산된 패키지 안의 파일을 생성하는 .



당신은 새로운 파일이 위치하면서 당신의 어느 드라이브 위의 어느 디렉터리 인지 선택해야만 합니다.

3.x부터 4.x 위한 프로젝트 이동


프로젝트 마이그레이션은 대부분의 경우의 자동 프로세스입니다.  당신이 3.x 프로젝트를 , IDEA 당신에게 다음의 다이얼로그를 프롬프트 것입니다.




당신이 No 누르면, 프로젝트는 열리지 않을 것입니다.  그러나 당신이 Yes 누르면, 변환 프로세스는 착수될 것이고 최종으로 프로젝트는 열립니다.  그러나, 프로젝트 디렉터리에 위치하지 않는 경로에 당신이 언제 3.x 프로젝트를 열었던 때를 알고 있어야만 하는 일부 이슈가 있습니다.  그것들은 4.x 변환된 프로젝트에는 없고, 수동으로 생성되어야만 합니다.

*   자동적으로 3.x에서 4.x 변환 가능한 항목들:

*         프로젝트 경로 아래에서의 SourcepathSource folders 변환.

*         ClasspathModule libraries 변환

*         Project libraries - converted into Project libraries  

*         프로젝트 라이브러리Project libraries  변환

*         프로젝트 라이브러리 소스 경로 그리고 Javadocs상응하는 라이브러리에 접속

*         프로젝트 경로 아래의 제외된 경로Excludes 변환

*         만일 당신이 3.0으로 다중 출력 경로를 가지면, 디폴트는 모듈 출력 경로로 실제로 변환


마이그레이션 하는 동안 어떤 것이 자동적으로 변환될 없는 것을 IDEA 감지하면, 4.x 프로젝트로부터 변환되었다면 특별한 처리를 필요로 하는 아이템을 기술한 다이얼로그가 프롬프트 입니다.

문제

솔루션

프로젝트 경로 아래가 아닌 Sourcepath

Libraries  안에 상응하는 라이브러리에 필요한 소스들을 추가하십시오.

프로젝트 경로 아래가 아닌 제외 경로

설정은 새로운 프로젝트 구조 모델 아래에서 이상 지원되지 않습니다.

프로젝트 경로 아래가 아닌 프로젝트 Javadoc

Libraries  탭에서 상응하는 라이브러리에 Javadoc 접속하십시오.

4.0으로 변환되지 않은 3.0 다중 출력 경로

프로젝트에서 다중 모듈을 사용하십시오.  가장 쉬운 방법은 별도 출력 경로를 필요로 하는 소스 경로를 위해 모듈을 생성하는 입니다.

 

3.x에서 4.x으로의 어플리케이션 프로젝트 마이그레이션


Web Applications  in IDEA 3.0 are rather close to  Web Modules  in IDEA 4.0 but they are completely similar. Therefore, Web Application  project migration has the following peculiarities (though you should take into account the details described for the general migration description). 
IDEA 3.0
Web Applications IDEA 4.0 Web Modules 가깝지만 그것들은 완전히 유사합니다.  그러므로, Web Application 프로젝트 마이그레이션은 다음의 특색을 가집니다 (비록 당신이 일반 마이그레이션 설명을 위해 기술된 세부사항을 고려해야만 하지만).

*   소스 파일/디렉터리는 분리된 Java module 옮겨집니다.

*   어플리케이션은 생성된 자바 모듈에 의존하는 별도 모듈로 바뀝니다.

*   web.xml 상응하는 Web Application 디렉터리에서 검색되고, 만일 발견되면 생성된 Web Module 위해 전개 설명어로서 설정됩니다.

*   만일 어떤 classes/또는 libs  디렉터리가 WEB-INF  있으면 그들은 module libraries 로서 구성됩니다.

*   IDEA 3.0프로젝트의 자바 SDK 모듈에 특유하게 되었습니다. .

*   끝으로, Exploded directory  모듈 디렉터리에 설정됩니다.