노력과 삽질 퇴적물

안드로이드: 이클립스 프로젝트를 안드로이드 스튜디오로 포팅 본문

프로그래밍note/언어. JAVA & JDK 계열

안드로이드: 이클립스 프로젝트를 안드로이드 스튜디오로 포팅

MTG 2018. 5. 17. 23:47





0. 필요한 파일


파일명

예시 경로

 JDK

 C:\Java\jdk1.8.0_111
개발용 환경변수 설정(Path 설정) 참조.

 android-studio 3.1.1.0

 [#]

 C:\android-studio

 sdk-tools-windows-3859397.zip

 [#]

 D:\dev_lib\android-sdk-windows\tools
안드로이드: SDK 명령어 버전 참조.




1. 기본 사항


1) Import project

보시는바와같이 일반 폴더 아이콘이 기존 이클립스 프로젝트이고,
안드로이드 스튜디오 프로젝트의 폴더에는 별도의 아이콘으로 표시되며
프로젝트 폴더명에 공백이 있을경우 경고가 뜹니다.



2) Gradle

프로젝트가 열린후,

하단 레이아웃에 있는 Messages Gradle Sync에서 다음과 같은 에러내역이 출력됐습니다.

1
2
3
4
5
6
7
8
9
Could not find com.android.tools.build:gradle:3.1.1.
Searched in the following locations:
    https://jcenter.bintray.com/com/android/tools/build/gradle/3.1.1/gradle-3.1.1.pom
    https://jcenter.bintray.com/com/android/tools/build/gradle/3.1.1/gradle-3.1.1.jar
Required by:
    project :
    Add Google Maven repository and sync project
    Open File
    Enable embedded Maven repository and sync project
cs


수동으로 아래와 같이 스크립트 수정후,

콘솔창에 있는 Enable embedded Maven repository and sync project를 클릭합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#(project_folder)\build.gradle
buildscript {
    repositories {
        jcenter()
        google()    //<--이 부분이 추가항목 (1)
    }
    ... ... ...
}
 
allprojects {
    repositories {
        jcenter()
        google()    //<--이 부분이 추가항목 (2)
    }
}
cs



1
2
3
4
5
6
7
#(project_folder)\gradle\wrapper\gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.1-all.zip
classpath=com.android.tools.build:gradle:3.1.1
cs

> 7번째 줄에 있는 클래스path의 경우 이후 언급될 app 빌드에 필요한 입력값입니다.



3) Build Tools 버전 맞추기

> SDK쪽 Build Tools가 최신버전이라는 전제조건이 있습니다.

> 기존 프로젝트 설정과 SDK쪽 빌드툴 버전이 동일하면 생략이 가능합니다.



4) sync

Snyc Project with Gradle Files라는 메뉴입니다.

싱크결과가 CONFIGURE SUCCESSFUL in 0s로 떠 있거나

최하단 상태표시에 Gradle build finished가 있으면 기본적인 포팅은 된겁니다.

* 만약 Gradle build가 되지 않는다면 에러메시지에 있는 항목을 복사해서 구글링을 하시면 대응이 가능할것으로 보입니다.


1
2
3
4
5
6
7
8
9
오후 11:17    Gradle sync started
 
오후 11:18    Project setup started
 
오후 11:18    Gradle sync finished in 44s 881ms
 
오후 11:18    Executing tasks: [:app:generateDebugSources]
 
오후 11:18    Gradle build finished in 11s 815ms
cs






2. 빌드


1
2
3
4
5
6
7
#(project_folder)\build.gradle
buildscript {
    ... ... ...
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
    }
}
cs


apk를 빌드하려니깐

[illegalcharacter: '\ufeff']라는 에러로 빌드가 안 됩니다.

에러가 나는 java파일등을 열고, 안드로이드 스튜디오 우측 하단에 있는 인코딩을 UTF-8로 적용후 빌드를 시도하면 정상적으로 될겁니다.






기타. 참조자료


이클립스에서 안드로이드 스튜디오로 프로젝트 임.. : 네이버블로그

안드로이드 스튜디오(Android Studio)에서 이클립스 프로젝트 불러오기(Import Eclipse Project)


이클립스 프로젝트 안드로이드 스튜디오로 마이그레이션 할 때 주의점 · Ringsterz Log





기타. 변경이력


일자

변경이력

2018-05-17

 초안