|
이 섹션은 이전의 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 프로젝트를 열 때, IDEA는 당신에게 다음의 다이얼로그를 프롬프트 할 것입니다.

당신이 No를 누르면, 프로젝트는 열리지 않을 것입니다. 그러나 당신이 Yes를 누르면, 변환 프로세스는 착수될 것이고 최종으로 프로젝트는 열립니다. 그러나, 프로젝트 디렉터리에 위치하지 않는 경로에 당신이 언제 3.x 프로젝트를 열었던 때를 알고 있어야만 하는 일부 이슈가 있습니다. 그것들은 4.x로 변환된 프로젝트에는 없고, 수동으로 생성되어야만 합니다.
자동적으로 3.x에서 4.x로 변환 가능한 항목들:
프로젝트 경로 아래에서의 Sourcepath- Source
folders로 변환.
Classpath- Module
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 는 모듈 디렉터리에 설정됩니다.
|