2013-12-20 2 views
2

좋아요.이 문제로 인해 봤지만, 저의 인생에서 내 문제를 해결할 수는 없습니다.Kryonet을 Android에서 작동 시키려고 시도합니다.

먼저 libGDX 프레임 워크 내에서 게임을 만드는 이클립스를 사용하고 있습니다. 프로젝트 내에서 kryonet을 가져 왔습니다.

PC 용으로 컴파일 할 때 작동합니다.

내가 안드로이드에 대한 컴파일 할 때 내 문제는, 그것은 나에게이 오류 제공 :

내가 할 수있는 모든 일을 한
Dx trouble writing output: already prepared 
[Dex Loader] Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/jsonbeans/Json$FieldMetadata; 
[-android] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/jsonbeans/Json$FieldMetadata; 

, 내 안드로이드 프로젝트 내 빌드 목록에 라이브러리를 추가 한, 내가 가진를 안드로이드 프로젝트의/lib 폴더에 추가했습니다. DEX 폴더를 삭제했습니다. 나는 내 건물을 청소하고 다시 시작했다. 내/gen은 내 주문/수출에서 내/src 위에 있으며, 나는 분명히 기본적인 것을 놓치고 있습니다. 나는 오늘 이것을 모두 봤다.

asm 
jsonbeans 
junit 
kryo 
kryo-debug 
minlog 
minlog-none 
objenesis 
reflectasm 

누군가가 나를 도와 주시겠습니까 : Kryonet에 관한 내가 사용하고 도서관 및 .jar의

목록? 내가 jsonbean 제거하면 동일한 패키지의 중복 참조가있다, 그것이 말하는 것처럼 내가

[2013-12-19 22:35:43 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/kryo/ClassResolver; 
[2013-12-19 22:35:43] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/kryo/ClassResolver; 
+0

-update- 물론 당신은 내가 성공적으로 안드로이드에 성공적으로 컴파일해야한다는 것을 알아야한다. 이 문제는 저의 게임에 KryoNet을 가져 오기 위해 전적으로 관련이 있습니다.감사합니다 :) – Krtko

답변

1

오우 와우 좋아, 나는 질식한다. 저를 도와 준 Kumar Bibek에게 감사드립니다. 나는 다른 사람들이 내가 멍청하고, 내가했던 것처럼 똑같이 구글과 불행한 경우에 대비하여 내 자신의 질문에 대답하고있다. :)

Ok 먼저 Kryonet의 소스를 메인 GDX 프로젝트/src 폴더에 설치한다. 플랫폼 독립적 인 프로젝트).

다음으로 필수 .JAR을 기본 GDX 프로젝트의/lib로 복사하십시오.

Eclipse에서 기본 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 빌드 경로에 라이브러리를 추가하십시오. 주문서에서 확인하고 내보내기하십시오 (필요하지 않을 수도 있음)

(이것은 내가 실수 한 부분입니다.) 필요한 .JAR을 안드로이드 소스 폴더의/lib에만 넣지 않도록하십시오. 메인 GDX 프로젝트/lib 폴더

이클립스에서 android GDX 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Add JARs를 클릭하십시오. 이 메뉴에서 메인 GDX 프로젝트의/lib 폴더로 가서 Kryonet에 필요한 모든 JAR을 추가하십시오. 그런 다음 주문 및 내보내기로 이동하여 모든 JAR을 확인하십시오.

이제 Android GDX 프로젝트를 컴파일 할 수 있습니다. 스택 오버 플로우를 다시 한번 감사드립니다. 당신을 사랑합니다. 나는 그것이 의미있게 만들어졌고 다른 멍청한 녀석들에게 도움이되기를 바란다. 나는 지금 꽤 슬프다. :)

+0

내 대답을 수락하기 위해 이틀이 걸립니다. 어쩌면 나중에 LOL ... ~ _ ~ – Krtko

+0

무엇을 편집 할 수 있습니까? 'main GDX project'라고 부르니? CORE 폴더 란 무엇입니까? 또는 다른 것 ? – LeSam

4
 
Dx trouble writing output: already prepared 
[Dex Loader] Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/jsonbeans/Json$FieldMetadata; 
[-android] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/esotericsoftware/jsonbeans/Json$FieldMetadata; 

를 얻을 당신 :

-edit- 감사드립니다. 추가하려는 라이브러리에 패키지가 정확히 어디에 있는지 파악해야합니다. 그리고 그것의 사본을 하나만 유지하는 방법을 찾아보십시오.

나는 kyronet이 이미 jsonbeans를 포함하고 있다고 생각하고 있습니다. 종속성 목록에서 jsonbeans 라이브러리를 제거해보십시오.

+0

조언을 주셔서 감사합니다,하지만 지금은 : [2013-12-19 22:35:43 - Dex Loader] dex를 실행할 수 없습니다 : 여러 dex 파일은 Lcom/esotericsoftware/kryo/ClassResolver를 정의합니다. [2013-12-19 22:35:43 - BumperBugs-android] Dalvik 형식으로 변환하지 못했습니다. dex를 실행할 수 없습니다 : 여러 dex 파일이 Lcom/esotericsoftware/kryo/ClassResolver를 정의합니다. – Krtko

+0

주 프로젝트에 대한 종속성에서 jsonBeans를 제거하면 json 직렬화를 수행하는 Kyronet 클래스에 오류가 있습니다 – Krtko

관련 문제