Android Studio의 IML 파일이란 무엇입니까?
Android Studio 프로젝트의 IML 파일이란 무엇입니까? 모듈의 구성 파일이라는 것을 읽었습니다. 작동 방식을 이해하지 못하고 gradle 스크립트를 사용하여 프로젝트에 추가하는 외부 모듈과 통합 할 수는 없습니다.
또한 대부분의 경우 AS에서 생성하므로 프로젝트 동작을 제어 할 수 없습니다. Eclipse 및 AS와 같은 다른 IDE에서 작동하는 팀이있는 경우 IDE와 무관하게 프로젝트를 설정할 수 있습니까?
이 시스템의 작동 방식을 완전히 이해하지 못했습니다.
Android Studio 프로젝트의 IML 파일이란 무엇입니까?
Google 검색이 iml file
켜집니다.
IML은 IntelliJ IDEA (Java 응용 프로그램 개발에 사용되는 IDE)에서 만든 모듈 파일입니다. Java, 플러그인, Android 또는 Maven 구성 요소 일 수있는 개발 모듈에 대한 정보를 저장합니다. 모듈 경로, 종속성 및 기타 설정을 저장합니다.
( 이 페이지에서 )
gradle 스크립트를 사용하여 프로젝트에 추가하는 외부 모듈과 통합하지 않는 이유는 무엇입니까?
"그라들 스크립트를 사용하여 외부 모듈과 통합"또는 자체 모듈을 사용합니다.
그러나 Gradle은 IntelliJ IDEA의 기본 프로젝트 모델이 아닙니다 ( .iml
파일과 .idea/
디렉토리 의 메타 데이터로 분리되어 보유 됨) . Android Studio에서는 Gradle 빌드 스크립트에서 그 내용이 크게 생성되므로, 같은 파일을 변경할 때 때때로 "Gradle 파일과 프로젝트 동기화"메시지가 표시됩니다 build.gradle
. 또한 .iml
파일 .idea/
내용을 재생성하기 때문에 파일을 넣거나 버전을 제어 하지 않아도 됩니다.
Eclipse 및 AS와 같은 다른 IDE에서 작업하는 팀이 있다면 프로젝트 IDE를 불가지론 적으로 만드는 방법은 무엇입니까?
대체로 할 수 없습니다.
Eclipse 스타일 디렉토리 구조를 사용하는 Android 프로젝트 (예 : 프로젝트 루트 디렉토리의 자원 및 매니페스트)를 사용할 수 있습니다. Gradle을 통해 build.gradle
해당 구조에서 파일을 찾는 방법을 가르 칠 수 있습니다 . 그러나 다른 메타 데이터 ( compileSdkVersion
, 종속성 등)는 거의 쉽게 복제되지 않습니다.
다른 대안은 다음과 같습니다.
Eclipse와 Android Studio 모두에 동일하게 통합되거나 관점에 따라 다르지 않은 Maven과 같은 다른 빌드 시스템으로 모든 사람을 이동하십시오.
Andmore 가 곧 이륙하기를 희망 하므로 Gradle 빌드 스크립트에서 Android 프로젝트를 빌드 할 수있는 Eclipse IDE를 가질 수 있습니다.
모든 사람이 하나의 IDE를 사용하도록하십시오
추가 .idea
및 *.iml
에 추가 .gitignore
하면 프로젝트를 가져오고 컴파일하는 데 해당 파일이 필요하지 않습니다.
그것들은 모듈 정보와 메타 데이터를 보유하는 프로젝트 파일입니다.
그냥 추가 *.iml
로 .gitignore
.
Android Studio에서 : CTRL+ F9를 눌러 프로젝트를 다시 빌드하십시오. 누락 된 *.iml
파일이 생성됩니다.
이러한 파일은 Android Studio 편집기에서 작성하고 사용합니다.
버전 관리를 위해 해당 파일을 체크인 할 필요는 없습니다.
Git은 파일 및 디렉토리 목록이 포함 된 .gitignore 파일을 사용하여 체크인 할 필요가없는 파일 및 디렉토리 목록을 알고 있습니다.
Android Studio는 버전 제어에 체크인 할 필요가없는 모든 파일 및 디렉토리를 나열하는 .gitingnore 파일을 자동으로 생성합니다.
참고 URL : https://stackoverflow.com/questions/30737082/what-are-iml-files-in-android-studio
'Programing' 카테고리의 다른 글
기다리다 Task.Wait-교착 상태? (0) | 2020.06.01 |
---|---|
Stroustrup의 예에서 콜론은“return 1 : 2”에서 무엇을 의미합니까? (0) | 2020.06.01 |
액세스 제한 : 'Application'유형이 API가 아님 (필수 라이브러리 rt.jar에 대한 제한) (0) | 2020.05.31 |
Objective-C에서 nil과 NULL을 언제 사용해야합니까? (0) | 2020.05.31 |
macOS에서 my.cnf 파일의 위치 (0) | 2020.05.31 |