ไม่สามารถรัน dex: ไฟล์ dex หลายไฟล์กำหนด


125

ฉันรู้ว่ามีการถามคำถามนี้ที่นี่สองสามครั้งก่อนหน้านี้ แต่ฉันยังไม่เห็นวิธีแก้ปัญหาที่เป็นไปได้ ก่อนที่ฉันจะสร้างโปรเจ็กต์ 'Run as Android Application' หากฉันไม่ทำความสะอาดฉันได้รับข้อผิดพลาดต่อไปนี้และต้องรีสตาร์ท Eclipse ... และทำความสะอาดอีกครั้ง

Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define
     Lcom/jstun/core/attribute/MessageAttributeInterface;

com.jstun.core ... เป็นส่วนหนึ่งของโฟลเดอร์ src ของฉันแน่นอนว่าฉันไม่สามารถลบออกได้ และแม้ว่าฉันจะลบแพ็คเกจนั้นออก แต่แพ็คเกจอื่นก็จะแสดงข้อผิดพลาดเช่น:

Unable to execute dex: Multiple dex files define
     Landroid/support/v4/app/ActivityCompatHoneycomb;

ฉันเห็นข้อผิดพลาดนี้ตั้งแต่อัปเดตเป็น ADT 15 ฉันใช้ Eclipse Galileo บน Ubuntu คุณมีความคิดหรือไม่? ขอบคุณสำหรับการตอบกลับ!


ฉันพยายามเกือบทุกอย่างในหัวข้อนี้ แต่ไม่ได้ผล ฉันแก้ไขปัญหาโดยการลบโปรเจ็กต์จากนั้นสร้างโปรเจ็กต์ใหม่และคัดลอกวางไฟล์ต้นฉบับจากข้อมูลสำรอง
linuxjava

อ้างถึงสิ่งนี้ stackoverflow.com/questions/34415101/…
Steve

ดูคำตอบของฉันที่ลิงค์ต่อไปนี้ stackoverflow.com/a/38391449/3702595
Sattar Hummatli

คำตอบ:


136

นี่คือปัญหาเส้นทางการสร้าง

  • ตรวจสอบให้แน่ใจว่าโฟลเดอร์ bin ของคุณไม่ได้รวมอยู่ในเส้นทางการสร้างของคุณ

  • คลิกขวาที่โครงการของคุณ -> ไปที่คุณสมบัติ -> สร้างเส้นทาง

  • ตรวจสอบให้แน่ใจว่าไลบรารี Honeycomb อยู่ในlibs/โฟลเดอร์ของคุณไม่ใช่ในโฟลเดอร์ต้นทางของคุณ

  • รวมไลบรารีไว้libs/ทีละรายการในเส้นทางการสร้าง

    BTW คุณอาจต้องการนำเข้าandroid-support-v4ห้องสมุดเพื่อรับการสนับสนุน Ice Cream Sandwich แทนห้องสมุดสนับสนุน Honeycomb


50
ปัญหานี้ยังเกิดขึ้นหากคุณมีไลบรารีหลายเวอร์ชันรวมอยู่ในเส้นทางการสร้างของคุณ การลบไลบรารีที่ไม่ได้ใช้ออกจากlibsพา ธ ล้างและบันทึกโปรเจ็กต์รีสตาร์ท Eclipse และคอมไพล์ใหม่อีกครั้งจะได้ผลสำหรับฉัน
Aryo

การแยกโฟลเดอร์ bin ออกจากเส้นทางการสร้างช่วยแก้ปัญหาให้ฉัน ขอบคุณ!
alekop

2
ต้นตอของปัญหาคือไลบรารีแห่งหนึ่งใช้ไลบรารี Nineoldandroid เป็น jar ที่เก็บไว้ใน. / libs dir ในขณะที่โครงการอื่นใช้ Nineoldandroid โดยอ้างถึง
Deepika Lalra

สิ่งนี้สามารถเกิดขึ้นได้เมื่อคุณมีบางอย่างเช่นFoo.javaในบรรจุภัณฑ์และFoo.javaในขวดlibs/
กลอุบาย

ข้อผิดพลาด / ข้อบกพร่องนี้เกิดขึ้นเมื่อโฟลเดอร์โครงการของคุณอยู่ใน Google ไดรฟ์ ฉันเดาว่ามันมีข้อบกพร่องเมื่อเคยซิงค์ไดรฟ์ อย่างน้อยสำหรับฉัน
ymerdrengene

58

ฉันพบข้อผิดพลาดที่คล้ายกันในวันนี้และสาเหตุก็คือไลบรารีสนับสนุนถูกอ้างอิงโดยโครงการไลบรารีสองโครงการที่ใช้โดยโครงการแอปของฉัน แต่ใช้เวอร์ชันต่างกัน

รายละเอียดเพิ่มเติม: แอปของฉันขึ้นอยู่กับ 2 โครงการห้องสมุด

  • FaceBookSDK 3.0 -> ซึ่งอ้างอิงถึง android-support-v4.0
  • ActionBarSherlock -> ซึ่งอ้างถึง android-support-v4 แต่มีเวอร์ชันแก้ไขเพื่อรองรับแผนที่

เพื่อแก้ปัญหาฉันต้องทำให้ไลบรารี FaceBookSDK ขึ้นอยู่กับไลบรารี ABS แทนที่จะเป็นไลบรารีสนับสนุนโดยตรง


ใช่ปัญหาของฉันคล้ายกัน สองไลบรารีมีไลบรารี httpmime ดังนั้นฉันจึงลบหนึ่งไลบรารีและชี้ไปที่โปรเจ็กต์อื่น
Matt

10
พวกคุณช่วยอธิบายได้ไหมว่าคุณทำมันอย่างไร
Samih A

3
@samih ในตัวอย่างที่ฉันพูดถึงก่อนอื่นฉันลบโถ android-support-v4 ออกจากโฟลเดอร์ lib ของโครงการ FaceBookSDK และสร้างเส้นทาง จากนั้นฉันเพิ่มการอ้างอิงไปยังโครงการไลบรารี ActionBarSherlock
มส.

สำหรับฉันปรากฎว่านักพัฒนารายอื่นได้เพิ่มไฟล์ jar ไลบรารีเวอร์ชันใหม่โดยไม่ต้องลบไฟล์เก่า ดังนั้นจึงมีสองไหที่มีคลาสเดียวกัน ดังนั้นข้อผิดพลาด 'หลายไฟล์ dex ... ' คุณสามารถทำ grep -r 'OffendingClassName' | grep jar $ เพื่อค้นหาไฟล์ jar ที่มีชื่อคลาส
bibstha

คล้ายกัน แต่ฉันได้เพิ่มandroid-support-v4.jarเส้นทางการสร้าง Eclipse ของฉันโดยไม่ได้ตั้งใจและเพิ่มลงในlibsโฟลเดอร์ที่ฉันสร้างด้วยตนเอง เนื่องจากการอ้างอิงที่ซ้ำกันฉันไม่สามารถรวบรวมได้ (และได้รับข้อความแสดงข้อผิดพลาดที่ OP ได้รับ) ฉันลบlibsโฟลเดอร์ที่ฉันสร้างขึ้นอย่างโง่เขลาและทุกอย่างใช้งานได้ ขอบคุณสำหรับคำแนะนำ
kurtzbot

47

สำหรับฉันฉันลบไฟล์ในโฟลเดอร์ libs ที่เรียกว่า android support v4.jar และทุกอย่างได้ผล โชคดี :)


1
สำหรับฉันมันเป็นไฟล์ที่รองรับ android v4.jar (1) .jarฉันเพิ่งลบมันออกและทำความสะอาดโปรเจ็กต์!
ymerdrengene

33

ฉันมีข้อผิดพลาดเดียวกันเกิดขึ้นและทุกครั้งที่ฉันแก้ไขมันจะกลับมาอีกหลังจากฉันรีสตาร์ท Eclipse

ก่อนอื่นอย่างที่คนอื่น ๆ พูดกันตรวจสอบให้แน่ใจว่าคุณไม่มีสำเนาไฟล์. jar เดียวกันหลายชุดในโครงการของคุณ

ในกรณีของฉันฉันมีโปรเจ็กต์หลักที่ใช้ ActionBarSherlock (ในบรรดาโปรเจ็กต์ไลบรารีอื่น ๆ ) เคล็ดลับที่ได้ผลสำหรับฉันกำลังจะเกิดขึ้นActionBarSherlock --> Properties --> Java Build path --> Order of ExportAndroid Private Librariesและยกเลิกการเลือก จากนั้นเข้าไปProject -> Cleanและตอนนี้คุณควรจะสร้างโครงการได้อย่างถูกต้อง

ด้วยเหตุผลบางประการทุกครั้งที่ฉันรีสตาร์ท Eclipse มันจะเปิดใช้งานช่องทำเครื่องหมายนั้นโดยอัตโนมัติดังนั้นฉันจึงต้องทำซ้ำขั้นตอนนี้อีกครั้ง

หวังว่านี่จะช่วยวิญญาณที่หลงหายไปบ้าง :)


32

ไปที่ Project / properties และ Java Built Path และยกเลิกการเลือก Android Private Libraries


1
แก้ไขปัญหาของฉันด้วย!
Totic

แต่มันหยุดทำงาน gcm.jar จะทำให้มันทำงานได้อย่างไรโดยไม่มีข้อผิดพลาดนี้?
Narendra Singh

ฉันมีข้อผิดพลาด: หลาย dex Lcom / google / android / gms / analytics / internal / Command $ 1 ฉันได้รับสิ่งนี้หลังจากอัปเกรด Google Play เป็น 22.1.1 การยกเลิกการเลือกไลบรารีส่วนตัวภายในโครงการ Google Play ได้ลบข้อผิดพลาด
eugene

คุณช่วยชีวิตฉัน! Thx ~
Leo Hsieh

15

สำหรับฉันแค่ไปที่ Project Properties >> Java Build Path >> Order and Export ยกเลิกการเลือกไลบรารีภายนอกทั้งหมดตามที่รูปภาพร้อง มันได้ผลสำหรับฉัน หวังว่าจะช่วยได้

คุณสมบัติของโครงการ


นั่นเป็นปัญหาสำหรับฉัน
Piyush-Ask Any Difference

8

ฉันประสบปัญหานี้ในโครงการของฉันด้วย AVD ไม่สามารถโหลดเนื้อหาโฟลเดอร์ lib, res และอื่น ๆ ได้ ปัญหา: Dex Loader] ไม่สามารถรัน dex: ไฟล์ dex หลายไฟล์กำหนดLandroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImplหลายกำหนด

จากนั้นฉันสร้างโครงการใหม่และคัดลอกMainActivity.java, activity_main.xmlบริบท drawable จากนั้นลบโปรเจ็กต์เก่าออกจากการสำรวจแพ็คเกจรีสตาร์ท Eclipse และ AVD ของคุณ โครงการของฉันทำงานได้อย่างถูกต้อง .... :) ฉันหวังว่าขั้นตอนนี้จะช่วยคุณได้เล็กน้อย .. !!


8

ฉันมีปัญหาเดียวกันสิ่งที่ฉันพยายามคือ:

  1. รายการ
  2. เปิดเส้นทางการสร้างโครงการ
  3. เลือกแท็บ "ไลบรารี"
  4. ลบไลบรารีทั้งหมดยกเว้น Android Library
  5. การเพิ่มไฟล์ JARs ที่จำเป็นทั้งหมด
  6. และเสร็จสิ้น!

มันได้ผลสำหรับฉันขอบคุณ


ใช่ฉันก็ทำแบบเดียวกัน ลบไฟล์ jar ทั้งหมดเพิ่มกลับ ตามลำดับและส่งออกไม่ได้เลือกการอ้างอิงและตรวจสอบไลบรารีทั้งหมดที่เพิ่มในตอนนี้
Maulik Sheth

6

หากบางท่านประสบปัญหานี้กับ facebook-connent-plugin สำหรับ phonegap

พยายามลบไฟล์ในไดเร็กทอรี bin / class / com / facebook / android! -> และสร้างใหม่


นี่คือคำตอบที่ใช่ คำอธิบายคือ ---- facebook.android รวมสองครั้ง เมื่ออยู่ใน facebookSDK.jar ซึ่งรวมอยู่ในโปรเจ็กต์ของคุณและเมื่อไฟล์ java รวมอยู่ในโปรเจ็กต์ของคุณโดยตรง การลบออกจากโปรเจ็กต์เป็นวิธีที่สะอาด คำตอบอื่น ๆ ทั้งหมดเป็นเพียงการแก้ไขซึ่งจะไม่ส่งออกคำจำกัดความหรือบางสิ่งบางอย่าง ....
Sandeep Taneja

6

ดังที่คนอื่น ๆ กล่าวไว้เหตุการณ์นี้เกิดขึ้นเมื่อคุณมีสำเนาของคลาสเดียวกันหลายชุดในเส้นทางการสร้างของคุณหรือที่อื่น ๆ ในการตั้งค่าของคุณ

ฉันได้เพิ่ม android-support-v4.jar ลงใน libs / โฟลเดอร์ของฉันแล้วและคราสก็ได้เพิ่มสำเนาที่สองลงใน bin / class / android-support-v4.jar

คุณสามารถทดสอบสิ่งนี้ด้วยไฟล์

grep -r YourOffendingClassName YourApp | โถ grep

การลบสำเนาพิเศษใน bin / คลาสช่วยแก้ปัญหาได้ - ไม่แน่ใจว่าทำไม Eclipse จึงสร้างสำเนาที่นั่น


1
ฉันลองใช้ตัวเลือกอื่น ๆ ทั้งหมดที่แสดงไว้ที่นี่ แต่นี่เป็นตัวเลือกที่แก้ไขได้สำหรับฉัน! :) และใช่ Eclipse ควรจะตายและ Android Studio ควรได้รับเวอร์ชัน 1.0 จากนั้นโลกจะน่าอยู่ขึ้น
Johan Paul

5

ฉันได้รับข้อผิดพลาดนี้ด้วยเหตุผลอื่น ฉันเข้าใจผิดว่าเพิ่มทั้งไลบรารีการสนับสนุน v4 และ v13 สิ่งนี้ไม่จำเป็นสำหรับฉันเนื่องจาก minSdkVersion ของฉันคือ 15

ฉันแก้ไขโดยรวมเฉพาะไลบรารีสนับสนุน v13 เท่านั้น ตรวจสอบให้แน่ใจว่าได้ทำเครื่องหมายไลบรารีในพา ธ การสร้างไลบรารีที่เอ็กซ์พอร์ตของคุณใน eclipse ฉันยังย้ายไปด้านบน


นี่คือสิ่งที่ทำให้ฉันเช่นกัน ไลบรารีการสนับสนุน v13 มีไลบรารีการสนับสนุน v4 ดังนั้น dex จึงแสดงการประกาศหลายคลาส
Kyle Falconer

4

แม้ว่าจะตอบหลายคำตอบ แต่ก็ไม่มีวิธีแก้ปัญหาสำหรับฉัน

ฉันลบ "Android Dependencies" ออกจากเส้นทางการสร้าง เพิ่มไฟล์ jar ทั้งหมดลงใน build path อีกครั้งและข้อผิดพลาดก็หายไป คราสดูเหมือนจะแคชสิ่งต่างๆ


3

ฉันจะทิ้งคำตอบนี้สำหรับคนที่ตกอยู่ในสถานการณ์นี้เหมือนที่ฉันทำ

ฉันสะดุดที่นี่และตรงนั้นก่อนที่จะสังเกตเห็นว่าฉันลากและวางไฟล์ Support Library JAR ลงในโฟลเดอร์ src ของฉันผิดพลาดและมันก็นอนอยู่ที่นั่น เนื่องจากฉันไม่รู้ว่ามันเกิดขึ้นได้อย่างไรหรือเมื่อฉันทิ้งมันลงที่นั่นฉันไม่เคยนึกเลยว่ามีอะไรผิดปกติที่นั่น

ฉันได้รับข้อผิดพลาดเดียวกันฉันพบปัญหาหลังจากนั้นไม่นานและลบออก ขณะนี้โครงการทำงานได้ดี


3

ทางออกสำหรับฉันคือทำสิ่งต่อไปนี้:

  1. -> ไดเรกทอรี lib ในโครงการของคุณและลบองค์ประกอบต่างๆ
  2. Project-> Properties-> Java build Path และลบ Dependency Library ใด ๆ ที่ถูกเพิ่มโดยอัตโนมัติไม่ใช่คุณ! -> สมัคร
  3. รีสตาร์ท Eclipse IDE
  4. ตอนนี้ทำความสะอาดโครงการ
  5. เรียกใช้ / แก้จุดบกพร่องบนอุปกรณ์ / จำลองโครงการ ... ขอให้โชคดี

ปัญหายังคงมีอยู่
Akhil Jain

2

ปัญหาของฉันในตอนแรกคือ:

ไม่สามารถเรียกใช้ dex: java.nio.BufferOverflowException ตรวจสอบล็อก Eclipse สำหรับการติดตามสแต็ก

1) ฉันคลิกขวาที่โครงการของฉัน -> เครื่องมือ Android -> เพิ่มไลบรารีการสนับสนุน (เรียกใช้แอปของฉัน ... ไม่ได้ผลฉันจึงดำเนินต่อไป ... ) 2) คลิกขวาที่โครงการของฉันอีกครั้ง -> คุณสมบัติ -> Android -> ตรวจสอบ Android 4.1.2 (16)ใน Project Build Target (เรียกใช้แอปอีกครั้ง ... และรับสิ่งนี้:

ไม่สามารถดำเนินการ dex: ไฟล์ dex หลายไฟล์กำหนด Landroid / support / v4 / app / BackStackState;

3) ดังนั้นผมจึงเดินไปที่โฟลเดอร์ "lib"ในโครงการของฉันและลบ"เก่า" Android.support.library.jar (เรียกใช้แอปและข้ามนิ้วมือและ ... )

มันได้ผล!

หวังว่าจะช่วยใครสักคน ... ขอบคุณทุกคน!


2

ฉันมีปัญหานี้และไม่ได้หมายความว่ามีการโหลดไลบรารีเดียวกันหลายครั้ง แต่ระบบพยายามโหลดคลาสที่มีชื่อเดียวกันและอาจเป็นชื่อแพ็กเกจเดียวกันพร้อมกันเช่น

  • com.pack1.deและClass Geometryของlibrary1.jar

เเละอีกอย่าง

  • com.pack1.deและClass Geometryของlibrary2.jar.

คุณควรเข้าหาอย่างไร? คุณควรวิเคราะห์ว่ากำลังใช้วิธีใดวิธีการของ library1.jar หรือ library2

มี 2 ​​วิธีแก้ไข

  1. เปลี่ยนชื่อชื่อแพ็กเกจแล้ว dalvik ตีความว่าเป็นคลาสที่แตกต่างกัน
  2. หรือถ้าคุณต้องการเสี่ยงให้ล้างคลาสที่ไม่มีเมทโธด์ที่เราใช้จริงๆ

ฉันหวังว่าจะได้ชี้แจงคำถามที่ถามบ่อยนี้


2

ฉันลบการอ้างอิงของ Android ออกจากเส้นทางการสร้างและใช้งานได้


1

ข้อผิดพลาดนี้เกิดขึ้นกับฉันเมื่ออยู่ในโปรเจ็กต์ของแอพฉันอ้างถึงโปรเจ็กต์ไลบรารีในพื้นที่ทำงาน Eclipse ของฉัน (ในกรณีของฉันคือ Facebook SDK) และในเวลาเดียวกันก็รวม Facebook SDK เป็น jar ในโฟลเดอร์ libs การลบการอ้างอิงไลบรารีออก แต่เก็บ jar ไว้ในโฟลเดอร์ libs จะลบข้อผิดพลาด


1

ฉันมีปัญหาเดียวกัน ฉันต้องลบ.apkไฟล์แล้วมันก็ใช้งานได้


1

สำหรับฉันฉันลบ android-support-v4.jar ออกจากโฟลเดอร์ lib และลบออกจาก build path ด้วย


สวัสดี Rach ยินดีต้อนรับสู่ Stackoverflow คำตอบของคุณถูกระบุว่ามีคุณภาพต่ำเนื่องจากความยาวและเนื้อหา เมื่อตอบคำถามโปรดระบุคำอธิบายเพิ่มเติมเกี่ยวกับวิธีแก้ปัญหา จะช่วยคนอื่นและสร้างชื่อเสียงให้คุณ :)
superhero

1
  • คลิกขวาที่โครงการและไปที่ build Path>configuration build path
  • เลือกแท็บไลบรารีและคลิกที่ support-v4 libraryและคลิกที่ลบ
  • คลิกตกลง

จากนั้นทำความสะอาดโครงการของคุณและเรียกใช้งานจะทำงาน :-)


0

ในกรณีที่มีใครบางคนไม่พอใจกับปัญหานี้เหมือนที่ฉันเพิ่งทำ:

กรณีของฉันเกี่ยวข้องกับโครงการห้องสมุดในเครือ เพียงแค่ทำโปรเจ็กต์ให้สะอาดบนไลบรารี่ทั้งหมดก็แก้ไขทุกอย่างได้แล้ว


0

ฉันพบวิธีแก้ปัญหาด้านล่างในคราส ... หวังว่ามันจะเหมาะกับคุณ :)

Right click on the Project Name

Select Java Build Path, go to the tab Order and Export

Unchecked your .jar library's

0

ปัญหานี้เกิดขึ้นเมื่อมีการเพิ่มไลบรารีเดียวกันลงในโครงการของคุณหลายครั้ง หากคุณไม่ได้เพิ่มไลบรารีหลายครั้งโดยเจตนาให้ตรวจสอบการอ้างอิง / ไลบรารีส่วนตัวของไลบรารีที่คุณเพิ่มในโปรเจ็กต์ของคุณซึ่งส่วนใหญ่อาจรวมไลบรารีไว้แล้วซึ่งทำให้เกิดความขัดแย้งนี้


0

ฉันยังดิ้นรนเพื่อค้นหาปัญหานี้ ในกรณีของฉันสิ่งที่เกิดขึ้นคือในขณะที่คัดลอก apk ไปยังอีเมล (ลากวาง) - โดยไม่ได้ตั้งใจ apk ถูกวางในโฟลเดอร์ src ในหนึ่งในแพ็คเกจ หลังจากลบ apk ออกจากโฟลเดอร์ต้นทางมันก็ใช้งานได้ดี


0

ฉันมีปัญหานี้ใน Intellij และเป็นเพราะไลบรารี ActionBarSherlock ที่ฉันเพิ่มลงในโปรเจ็กต์ของฉันกำหนด android-support-v4.jar เป็นการพึ่งพาการคอมไพล์และ jar นี้รวมอยู่ในโปรเจ็กต์ของฉันแล้วดังนั้นจึงมี DEX หลายสำเนา / เวอร์ชันที่ รวบรวมเวลา

วิธีแก้ปัญหาคือเปลี่ยนการพึ่งพาโมดูล ActionBarSherlock สำหรับ jar นี้เป็น Runtime แทนการคอมไพล์เนื่องจากโครงการของฉันได้จัดเตรียมไว้แล้ว


0

สำหรับฉันปัญหาคือฉันได้เพิ่มโปรเจ็กต์ lib (autobahn lib) ก่อนหน้านี้และต่อมาเปลี่ยนเป็นไฟล์ Jar ของไลบรารีเดียวกันแม้ว่าฉันจะลบการอ้างอิงไปยังโปรเจ็กต์ไลบรารีรุ่นเก่า แต่ฉันก็ได้รับข้อผิดพลาดนี้ ทำตามคำตอบทั้งหมดที่นี่ฉันตรวจสอบเส้นทางการสร้าง ฯลฯ แต่ฉันไม่ได้เพิ่ม libs เหล่านี้เพื่อสร้างเส้นทางด้วยตนเอง ดังนั้นฉันไม่มีอะไรจะลบ ในที่สุดก็เจอโฟลเดอร์นี้

bin / dexedLibs

ฉันสังเกตเห็นว่ามีไฟล์ jar สองไฟล์ที่มีชื่อเดียวกันซึ่งตรงกับ autobahn Android ซึ่งทำให้เกิดความขัดแย้ง ดังนั้นฉันจึงลบไฟล์ jar ทั้งหมดในโฟลเดอร์ dexedLibs และสร้างโครงการใหม่ นั่นช่วยแก้ปัญหาได้


0

ในการเพิ่มแหล่งที่มาอื่น ๆ ที่เป็นไปได้มากมาย ... ฉันได้อัปเดตไลบรารีทั้งหมดในlibโฟลเดอร์ของโปรเจ็กต์ของฉันแล้ว แต่ Eclipse "ช่วยได้" ก็ติดตั้งไลบรารีดั้งเดิมทั้งหมดใหม่ ไม่มีการอ้างอิงใด ๆ ภายใน Eclipse ไปยังไลบรารีเหล่านี้อีกต่อไป แต่โปรแกรม dex-maker ภายนอกเพิ่งคว้าไฟล์ทั้งหมดในlibไดเร็กทอรีและทำให้มีไลบรารีสองเวอร์ชัน.jarไฟล์

git statusระบุไฟล์ใหม่และgit clean -fกำจัดให้ฉัน (แม้ว่าบางครั้งฉันต้องรอหรือรีสตาร์ท Eclipse บน Windows เนื่องจากยังคงเปิดไฟล์จากสำเนา)


0

โซลูชันที่เรียบง่ายและดีที่สุดของ ULTRA:

ลบทุกอย่างในโฟลเดอร์ของโครงการหลักคลิกขวา -> คุณสมบัติ -> Java Build Path ยกเว้น Android XY (โดยที่ XY เป็นเวอร์ชันใน Android) ทำความสะอาดและสร้าง ทำ!

ตรวจสอบให้แน่ใจก่อนหน้านั้นว่ามี android-support-v4.jar เพียงเครื่องเดียว


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.