2009-11-06 4 views
9

Eclipse에서 IntelliJ로 앱을 이식하려고합니다. 응용 프로그램이 잘 빌드되지만 제대로 실행되지 않습니다.IntelliJ 9.0에서 Android 앱을 빌드 할 때 "리소스를 찾을 수 없음"Maia Public Beta

가 여기에 내가받을 부분 스택 추적입니다 :

ERROR/AndroidRuntime(957):    
java.io.IOException: Resource not found: "org/joda/time/tz/data/ZoneInfoMap" ClassLoader: [email protected] 
     at org.joda.time.tz.ZoneInfoProvider.openResource(ZoneInfoProvider.java:209) 
     at org.joda.time.tz.ZoneInfoProvider.<init>(ZoneInfoProvider.java:123) 
     at org.joda.time.tz.ZoneInfoProvider.<init>(ZoneInfoProvider.java:82) 
     at org.joda.time.DateTimeZone.getDefaultProvider(DateTimeZone.java:439) 
     at org.joda.time.DateTimeZone.setProvider0(DateTimeZone.java:393) 
     at org.joda.time.DateTimeZone.<clinit>(DateTimeZone.java:114) 
     at org.joda.time.chrono.GregorianChronology.<clinit>(GregorianChronology.java:71) 
     at org.joda.time.chrono.ISOChronology.<clinit>(ISOChronology.java:66) 
     at org.joda.time.base.BaseDateTime.<init>(BaseDateTime.java:97) 
     at org.joda.time.DateTime.<init>(DateTime.java:120) 

몇 가지 이유를 들어, 응용 프로그램은이 모듈의 빌드 경로에 지정하고, 비록 joda 시간 자원을 찾을 수 없습니다. 이것들은 앱의 일식 버전에서 사용되는 동일한 jar 파일입니다.

alt text http://img.skitch.com/20091106-pgqujbb5eaeqc2wfiqc2c1p39a.png

인 IntelliJ 도구로 내장 된 APK는 이클립스에 의해 만들어진 것보다 약 20 % 더 작은, 그러나 나는 이유를 알지 못한다.

어떤 문제 일 수 있습니까?

UPDATE :

내가 로맹과 XAV 어제와 통화를하고, 문제가 인 IntelliJ가 APK에 자원 번들되지 않는 것입니다 것으로 보인다. 분명히 aapt는 2 단계 접근 방식을 취합니다. 먼저 모든 클래스 파일을 .dex 파일로 묶은 다음 모든 리소스 파일을 apk 파일의 최상위 수준으로 따로 따로 묶습니다. intellij가 빠진 것 같습니다.

임시 해결책으로, 나는 joda-time jar의 모든 리소스 파일의 압축을 풀고이를 src 디렉토리에 놓을 것을 제안했습니다. Intellij는 내 소스의 일부인 것처럼 내 apk에 묶어서 문제를 해결할 것이라는 기대가있었습니다. 그러나이 작업을 수행 할 때 IntelliJ는 apk를 만들 때 해당 파일을 완전히 무시했습니다.

이유를 모르겠습니다. 어쩌면 빌드 할 때마다 몹시 불편하지 않은 apk에 joda-time 리소스 파일을 가져 오는 데 사용할 수있는 임시 해결책이 있습니까?

+0

왜 인텔리 제이를 사용하고 있습니까? 그렇다면 안드로이드 개발을 위해 이클립스를 사용하라는 Google의 조언은 Inetli J 만 주소 지정하는 특별한 필요가 있습니까? –

+0

그냥 내 호기심 그 밖에. –

+0

IntelliJ에 아무런 문제가 없었지만, Eclipse보다 더 좋아합니다. 희망을 당신이 내 프로젝트에 외부 항아리를 추가하는 데 아무런 어려움이 없다고 생각합니다. 내 유일한 제안은 추가 버튼 아래의 설정을 조정할 것입니다. – sgarman

답변

1

이것은 꽤 오래된 인텔리 전 버전입니다. 10.5는 안드로이드 개발자와 관련된 모든 문제를 해결하는 것으로 보입니다

0

종속성의 범위가 문제가되지 않습니까? 그것들이 단지 컴파일하는데 익숙하다면, 그것이 런타임에 작동하도록 보장되어 있지 않습니까?

저는 IJ 사용자가 아니지만 내 스크린 샷에서 볼 수 있습니다. 또한 왜 안드로이드 패키지의 크기가 80 % 더 낮은지 설명 할 수 있습니다.