2013-12-20 19 views
2

好吧,我已經把這個問題搞糊塗了,但我不能爲了我的生活修復我的問題。試圖讓Kryonet與Android合作

首先我使用eclipse在libGDX框架內製作遊戲。 我在我的項目中導入了kryonet。

它在我編譯PC時起作用。

我的問題是,當我編譯爲Android,它給了我這個錯誤:

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; 

我已經盡我所能,我已經加入了圖書館我的生成名單在我的Android項目,我有將它們添加到android項目的/ lib文件夾中。我刪除了我的DEX文件夾。我清理了我的構建並重新啓動。我的/ gen在我的順序上面我的/ src和導出我顯然缺少一些基本的東西。今天我花了所有的時間搜索這個。

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

是否有人可以幫助我:

庫.jar文件我使用與Kryonet的名單?謝謝:)

CNC中如果我刪除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- Incase你當然需要知道我已經成功編譯爲android之前。這個問題完全與我試圖將KryoNet導入到我的遊戲中有關。感謝:) – Krtko

回答

1

哦哇好吧,我很興奮。謝謝Kumar Bibek幫助我。我在這裏回答我自己的問題,以防其他人像我一樣喜歡noob和谷歌,因爲我運氣不好)

確定首先安裝Kryonet的源代碼到您的主GDX項目/ src文件夾中平臺獨立項目)。

接下來將所需的.JAR複製到主GDX項目的/ lib中。

然後在Eclipse中右鍵單擊您的主項目並將庫添加到您的構建路徑。一定要檢查它們下的訂單和出口(這可能不是必要的)

(這是我犯了一個錯誤)請確保你沒有把必需的.JAR放入你的android源文件夾的/ lib在主GDX項目/ lib文件夾中

然後在Eclipse中右鍵單擊您的android GDX項目並單擊添加JAR。在這個菜單中進入你的主GDX項目的/ lib文件夾,併爲Kryonet添加所有必需的JAR。然後進入訂單和導出並檢查所有這些JAR。

現在你可以編譯你的Android GDX項目再次感謝堆棧溢出我愛你。我希望這是有道理的,並幫助其他新手,因爲我現在很笑,現在哈哈:)

+0

需要兩天時間來接受我自己的答案,好的,也許我可以稍後再編輯它lol ...〜_〜 – Krtko

+0

什麼你叫'GDX主項目'嗎?那是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; 

,因爲它說,有相同的包的重複引用。您需要確定這些軟件包在您要添加的庫中的確切位置。並找出一種方法來保留它的一個副本。

我猜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,那麼在Kyronet類中有一個錯誤,它會執行json序列化 – Krtko